首页/网络/协议速查/Content-Length 内容长度
HTTP 头与缓存70 条

Content-Length 内容长度

八位字节计的报文长度(十进制)。与 Transfer-Encoding 互斥,是请求走私攻击的关键字段。

协议速查网络更新于 2026-10-12
名称Content-Length
作用声明实体/报文长度
规范RFC 9110 §8.6
冲突规则请求同时含 Transfer-Encoding 与 Content-Length 时必须拒绝或按 TE 处理(防走私)

空体与固定长度

空体与固定长度
Content-Length: 0        # 空请求体
Content-Length: 348      # 与字节数严格一致
HTTP/1.1 前端(网关)与后端(应用)对 CL/TE 优先级判断不一致时,可被构造「请求走私」(Request Smuggling)。统一编排层并禁用歧义报文是标准防御。

易错点

  • 中文等多字节字符按「字符数」算长度会少算字节数,导致截断
  • 重复 Content-Length 或含非数字值应直接 400,放任解析是走私温床

数据来源与参考

  • RFC 9110 §8.6 Content-Length
  • RFC 9112 §6.3(消息长度)

相关工具

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