本系列是阅读 《图解 HTTP》 时的阅读笔记。
3.1 HTTP 报文
用于 HTTP 协议交互的信息被称为 HTTP 报文;
请求端叫
请求报文
, 响应端叫响应报文
;HTTP 本身是由多行
(用 CR + LR 作换行符)
数据构成的字符串文本。报文首部
和报文主体
由最初出现的空行( CR + LF ) 划分。通常,并不一定由报文主体。
( CR Carriage Return, 回车符:16进制 0x0d )
( LF Line Feed, 换行符: 16进制 0x0a )
3.2 请求报文及响应报文的结构
请求行 / 响应行
状态行 (响应报文才有)
首部字段
表示请求和响应的各种条件和属性的各类首部,一般有 通用首部、请求首部、响应首部、实体首部
其他
HTTP 的 RFC 里未定义的首部 ( Cookie 等 )
3.3 编码传输
HTTP 传输数据可按原样传输
,也可以编码传输提高效率
。
注: 编码需由计算机完成, 因此会消耗更多 CPU 资源。
3.3.1 报文主体与实体主体的差异 ???
报文(message): HTTP 通信基本单位, 8 位字节流组成。
实体(entity): 请求或响应的有效载荷数据,内容由实体首部和实体主体自称。
通常,报文主体等于实体主体。 当传输中进行编码时,实体主体内容变化才导致和报文主体产生差异。