首页/网络/协议速查/Transfer-Encoding 传输编码
HTTP 头与缓存70 条

Transfer-Encoding 传输编码

逐跳的报文传输编码:HTTP/1.1 的标准值是 chunked(分块),解决长度未知时的流式传输。

协议速查网络更新于 2026-10-12
名称Transfer-Encoding
作用报文分帧方式(逐跳)
规范RFC 9110 §6.1;RFC 9112 §6.1
HTTP/2+不再使用 chunked(帧自带长度);仅允许 trailers

分块响应结构

分块响应结构
HTTP/1.1 200 OK
Transfer-Encoding: chunked

1a\r\n(26 字节数据)\r\n0\r\n\r\n
报文中同时出现 Transfer-Encoding 与 Content-Length 是请求走私(smuggling)的经典素材;网关应拒绝这种歧义消息。

易错点

  • 网关解 chunked、后端按 Content-Length 解析,两边不一致时产生走私漏洞;统一编排层并规范报文校验
  • HTTP/2 网关闭 chunked 转发出错,流式接口(SSE)卡住

数据来源与参考

  • RFC 9112 §6.1 Transfer-Encoding
  • RFC 9110 §6.1

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌