美文网首页我爱编程
图解http学习笔记第三章:HTTP报文内的HTTP信息

图解http学习笔记第三章:HTTP报文内的HTTP信息

作者: 著名的 | 来源:发表于2017-12-11 22:26 被阅读40次

    HTTP通信过程包括从客户端发送请求到从服务器返回响应。

    3.1 HTTP报文

    用于HTTP协议的交互信息叫做http报文,分为报文首部和报文主体。报文首部分为请求报文首部和响应报文首部。HTTP协议大致可分为报文首报和报文主体。两者通过最先出现的空行(CR+LF)来划分。通常并不一定需要报文主体。

    3.2 请求报文及响应报文的结构

    请求报文首部
    包含请求行、请求首部字段、通用首部字段、实体首部字段、其他。

    请求行
    包含请求的方法、请求uri、HTTP版本。

    响应报文首部
    包含状态行、响应首部、通用首部字段、实体首部字段、其他。

    状态行
    包含状态码、原因短语、HTTP版本。

    其他
    可能包含HTTP的RFC里未定义的首部(Cookie等)。

    3.3 编码提升传输速率

    HTTP在传输数据过程中对数据编码处理提升传输速率,能有效的处理大量的访问请求。但是编码要通过计算机完成,因此会消耗更多的CPU等资源。

    3.3.1 报文主体和实体主体的差异

    实体作为请求或响应中的有效载荷数据(补充项)被传输,其内容由实体首部和实体主体组成。
    HTTP报文的主体用于传输请求或者响应的实体主体。
    通常报文的主体等于实体主体,只有当传输中的数据进行编码操作时,实体主体的内容发生变化时,才导致了它和报文主体产生差异。

    3.3.2 压缩传输的内容编码

    我们传输文件的时候会通过压缩来缩小文件的容量。HTTP协议中也有一种被称为内容编码的功能也能进行类似的操作。

    内容编码指明应用在实体内容上的编码格式,并保持实体信息原样压缩。内容编码后的实体由客户端接收并负责解码。

    3.3.3 分割发送的分块传输编码

    传输大容量数据的时,通过把数据分割成多块传输。(这边的数据也是一次性传输只不过可以分块逐步显示<个人理解,有误请指正>)

    3.4 发送多种数据的多部分对象集合

    发送邮件时,我们可以在邮件里写入文字并添加多份附件。这是因为采用了MIME(Multipurpose Internet Mail Extensions,多用途因特网邮件扩展)机制,它允许邮件处理文本、图片、视频等多个不同类型的数据。

    相关文章

      网友评论

        本文标题:图解http学习笔记第三章:HTTP报文内的HTTP信息

        本文链接:https://www.haomeiwen.com/subject/tlgwixtx.html