TE 请求头

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

HTTP TE 请求头指定了用户代理愿意接受的传输编码。传输编码用于在传输过程中对消息进行压缩和对数据进行分块。

传输编码应用于协议层,因此接收响应的应用程序接收到的消息体,就好像没有应用任何编码一样。

注意:HTTP/2HTTP/3 中,只有当 trailers 值被设置时,TE 请求头字段才会被接受。

头类型 请求头
禁止请求头

语法

http
TE: compress
TE: deflate
TE: gzip
TE: trailers

逗号分隔列表中包含多个指令,并带有质量值作为权重

http
TE: trailers, deflate;q=0.5

指令

压缩(compress)

使用 Lempel-Ziv-Welch (LZW) 算法的格式被接受为传输编码名称。

解压缩(deflate)

使用 zlib 结构的格式被接受为传输编码名称。

gzip

使用 Lempel-Ziv 编码 (LZ77) 并带有 32 位 CRC 的格式被接受为传输编码名称。

trailers

表示客户端不会丢弃分块传输编码中的尾部字段。

q

当有多个可接受的传输编码时,q 参数(质量值)语法会根据偏好对编码进行排序。

请注意,HTTP/1.1 接收方总是支持 chunked,因此您无需使用 TE 请求头指定它。有关更多详细信息,请参阅 Transfer-Encoding 请求头。

示例

使用带有质量值的 TE 请求头

在以下请求中,客户端表示偏好 gzip 编码的响应,并将 deflate 作为第二偏好,使用 q 值。

http
GET /resource HTTP/1.1
Host: example.com
TE: gzip; q=1.0, deflate; q=0.8

规范

规范
HTTP 语义
# field.te

浏览器兼容性

另见