HTTP报文

一、什么是报文:

用于HTTP协议交互的信息称为HTTP报文,请求端的报文叫请求报文,响应端的报文叫响应报文。

二、报文的分类:

报文首部和报文主体;

三、报文的内容:

1、请求行:

包含用于请求的方法,如;GET/POST等,和HTTP版本;

2、状态行:

包含表明响应结果的状态码,原因短语,如:200 OK和HTTP版本;

3、首部字段:

包含请求和响应的各种条件和属性的各类首部;首部的分类:通用首部、请求首部、响应首部、实体首部;

HTTP报文

HTTP报文

四、报文和实体:

1、报文:

是HTTP通信的基本单位,由8位字节流组成。

2、实体:

是请求或响应的有效数据被传输,内容有实体首部和实体主体组成;

注:报文主体等于实体主体,只用传输中进行编码操作时,实体主体的内容才会发生变化,才导致和报文主体产生差异;

五、内容编码方式传输:

当报文的内容过大时,为了减少传输时间,就会采用一些压缩的措施;属性Accept-Encoding就是用于设置内容编码的格式;

1、压缩传输内容编码:

      1)gzip:GNU压缩格式;

      2)compress(UNIX系统的标准压缩格式);

      3)deflate同时使用了LZ77和哈弗曼编码的无损压缩格式;

      4)identity不进行压缩;

2、分割传输编码:

在传输大容量的数据时,通过把数据分割成多块,能够让浏览器逐步显示;

3、范围请求:

HTTP报文请求一些大型的图片时,加载过程变慢,这时可以使用范围请求将图资源分块加载资源文件。在请求报文中使用Range属性,在响应报文中使用Content-Type属性来指定范围;