《图解HTTP阅读笔记》第三章 HTTP报文内的HTTP信息

75 阅读2分钟

本系列笔记为笔者自己阅读时随意记录,不保证准确性,如有错误请在评论区指出。希望能把笔记尽量总结成可以直接背诵的八股~另外,笔者非科班且秋招进行时,书的内容较多,所以只记录也许对秋招有用的知识,过深的知识点以后再补齐!

第三章 HTTP报文内的HTTP信息

用于HTTP协议交互的信息被称为HTTP报文。请求端(客户端)的报文被称为请求报文,响应端(服务器端)的报文被称为响应报文。HTTP报文本身是由多行数据构成的字符串文本。

HTTP报文可大致分为报文首部和报文主体两块。两者由最初出现的空行划分,通常,并不一定要有报文主体。

【报文首部】 服务端或客户端需处理的请求或响应的内容及属性 【报文主体】 应被发送的数据

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

请求报文和响应报文的首部内容由以下数据组成:

请求行 包含用于请求的方法,请求URI和HTTP版本。

状态行 包含表明响应结果的状态码、原因短语和HTTP版本。

首部字段 包含请求和响应的各种条件和属性的各类首部,一般有四种首部:通用首部、请求首部、响应首部和实体首部。

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

编码提升传输效率

HTTP在传输数据时,可以按照数据原貌直接进行传输,但也可以在数据传输过程中通过编码提升传输效率。通过在传输时编码,能有效地处理大量访问请求。但编码的操作需要计算机来完成,因此会消耗更多的CPU资源。

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

  • 报文(message)

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

  • 实体(entity)

    作为请求或响应的有效载荷数据(补充项)被传输,其内容由实体首部和实体主体组成。