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

Sea*_*yen 49 http http-headers

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

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

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

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

mic*_*ica 55

规范(你挂)的第10.4节并没有说关于应对自身需求什么,而是链接到部分7.2.2,指定服务器可以指示通过包含实体主体的响应的长度

  • 发送Content-Length标题,或
  • 在发送整个响应时关闭连接.

第7.2节说,对HEAD请求的响应以及1xx,204或304响应不应包括实体主体,因此不需要包括Content-Length标题; 和

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

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

  • 我相信最终的结论并不完全准确."客户端一直在读取,直到服务器关闭连接,或者已经收到已宣布的内容长度;之后(tcp)连接可以用于另一个请求." 如果我在这里犯错,请告诉我. (2认同)
  • @KemHeyndels我已经澄清了一点答案; 它*是*写在我的新手时代,也许有点不清楚.谢谢你引起我的注意. (2认同)