Http协议简介
超文本传输协议,作为互联网三大基石之一。(url、http、html)
一、概论
作用:
规范了浏览器和服务器之间的交互格式。
特点:
1、简单,快速,向服务器发起请求时,只需要指定传输方式和路径。
2、灵活,允许传输任意类型的数据,使用Content-Type标记传输数据的类型。
3、无连接,每次连接只储存一个请求。(注意:http1.1版本以后支持可持续连接)
4、无状态,无状态协议不会存储之前传输的数据,如果需要则要重新传输。
二、交互流程
步骤:
1、客户端和服务器端建立连接。
2、客户端发送请求数据到服务器端。
3、服务器端接收到请求后,进行处理,然后将处理结果相应给客户端。
4、关闭连接。(http1.1版本后不会立即关闭)。
三、传输消息格式
请求格式:
1、请求行,包含请求方式,地址,版本协议。
2、请求头,包含一些客户端的附加信息。(键值对)
3、空白行,必须的空白行。
4、请求正文,要提供给服务器的信息。
响应格式:
1、响应行,包含协议/版本 状态码 描述
2、响应头,包含一些服务器端的附加信息。(键值对)
3、空白行,必须的空白行。
4、响应正文,要提供给客户端的数据。
四、常见请求方式
get方式:从指定的资源请求数据。
1、将请求正文以?为分隔符,追加在请求地址url后侧,即请求头中,但是因为url长度有限制,所以get方式不能够携带大量数据。
2、在发起请求时候,请求正文会显示在地址栏中。
3、参数会保持在浏览器历史记录中。
post方式:向指定的资源提交要被处理的数据。
1、将请求正文放在指定位置。
2、发起请求时,请求正文不会显示在地址栏中。