HTTP / 1.0响应是否需要Content-Length标头?

时间:2013-04-13 18:11:27

标签: http http-headers

HTTP / 1.0响应是否需要Content-Length标头? HTTP规范提到它是请求所必需的,但没有提及有关响应的任何内容:

http://www.w3.org/Protocols/HTTP/1.0/draft-ietf-http-spec.html#Content-Length

  

所有HTTP / 1.0都需要有效的Content-Length字段值   请求包含实体主体的消息。

如果响应不需要,当客户端的响应大于1MB时,客户端如何读取响应?

1 个答案:

答案 0 :(得分:49)

规范的第10.4节(您链接到的)没有说明对响应本身的要求,而是链接到section 7.2.2,它指定服务器可以指示包含实体的响应的长度

  • 发送Content-Length标头或
  • 在发送完整个响应时关闭连接。

Section 7.2表示对HEAD个请求以及1xx,204或304个响应的响应不应包含实体主体,因此不需要包含Content-Length标头;和

  

所有其他响应必须包含实体主体或定义为零(0)的Content-Length标头字段。

所以回答这个问题:当没有收到Content-Length时,客户端会一直读取,直到服务器关闭连接。