/ NOTES

《图解HTTP》读书笔记(三)

《图解 HTTP》读书笔记(三)

HTTP 报文内的 HTTP 信息

HTTP 报文

HTTP报文

HTTP 报文按用途可以分为请求报文响应报文

按结构可大致分为报文首部报文主体两块,这两者由第一个出现的空行 (CR+LF) 来划分。

报文首部

报文首部为服务器端或客户端需处理的请求或响应的内容属性

它由五部分数据组成:

  • 请求行 / 状态行
  • 请求首部字段 / 响应首部字段
  • 通用首部字段
  • 实体首部字段
  • 其他

其中,请求报文由请求行、请求首部字段、以及后面三种组成;响应报文由状态行、响应首部字段和后面三种组成。

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

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

请求首部、响应首部、通用首部、实体首部字段:包含表示请求和响应的各种条件和属性的各类首部。

报文主体

报文主体为应被发送的数据。通常,并不一定要有报文主体。

HTTP 协议中有一种功能叫内容编码,在传输的过程中,可以通过编码提升传输速率。作为代价,编码的操作会消耗 CPU 等资源。

常用的内容编码有以下 4 种:

  • gzip (GNU zip)
  • compress (UNIX 系统的标准压缩)
  • deflate (zlib)
  • identitiy (不进行压缩)