超文本传输协议HTTP

1.面相事务的应用层协议,端口号80。

2.HTTP协议本身是无连接的。虽然HTTP使用了TCP连接,但通信的双方在交换HTTP报文之前不需要先建立HTTP连接。

3.HTTP协议是无状态的。也即同一客户第二次访问同一个服务器上的页面时,服务器的响应与第一次被访问时相同。(服务器不记得曾经来访的客户,也不记得曾经为某用户服务过多少次)

4.HTTP/1.0的缺点是每请求一个文档就要重新建立TCP连接,这导致HTTP/1.0效率不高。对服务器来说,反复为同一客户分配缓存也增加了额外负担。

5.HTTP/1.1使用持续连接,使用户和服务器可以继续在该连接上传送后续的HTTP请求报文和响应报文。持续连接有两种工作方式:1.非流水线方式,客户在收到前一个响应后才能发出下一个请求(与HTTP/1.0相比省去了建立TCP的过程)。2.流水线方式,可以连续发送请求。

6.代理服务器(又称万维网高速缓存):一种网络实体,代理服务器吧最近的一些请求和响应存在本地磁盘中。请求到达时,若该请求若与暂存中的相同,就返回暂存的响应,而不需要按URL的地址在此去因特网访问该资源。

7.HTTP请求报文中的一些方法

方法 意义
OPTION 请求一些选项信息
GET 请求读取由URL所标志的信息
HEAD 请求读取由URL所标志的信息的首部
POST 给服务器添加信息(如注释)
PUT 在指明的URL下存储一个文档
DELETE 删除指明的URL所标志的资源
TRACE 用来进行环回测试的请求报文
CONNECT 用于代理服务器

8.每个请求发出都能收到一个响应报文,响应报文第一行就是状态行,状态行包括状态码。(常见的三种状态码202 Accepted、400 Bad Request、404 Not Found)

状态码 意义
1XX 通知信息,如请求收到了或正在处理
2XX 成功,如接受或知道了
3XX 重定向,如完成请求还必须进一步行动
4XX 客户的差错,如请求中有错误不能完成
5XX 服务器的差错,如服务器失效无法完成请求

HTTP2

(待完善)