指定HTTP/1.0响应中的Content-Length头部有什么好处?

5
HTTP/1.0规范指出,服务器可以通过以下方式表明包含实体主体的响应长度:
- 发送一个Content-Length头部 - 当整个响应发送完毕时关闭连接
因此,对于像图像、HTML页面或Ajax数据这样的普通响应来说,Content-Length头部是可选的。
但是,在提供该头部的情况下,有些情况下使用它可以带来一些好处。
那么问题来了:这些情况是什么,有哪些好处?
(例如:如果响应是一个正在下载的文件,则浏览器如果指定了Content-Length会显示进度条。)
1个回答

5
当内容长度可预测时,将其通知客户端会很有帮助,因为这样可以一次性分配所需的内存和磁盘空间,从而实现更高效的传输,并且在客户端没有足够的资源时可以提前终止。这优化了传输,使服务器和客户端都受益。
当内容长度无法预测时(例如,因为它是动态生成的),这些优化显然不可能实现。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接