43

我目前正在尝试优化多个应用程序之间基于 http 的数据传输。我们当前的方法,首先下载然后创建后请求,显然会增加额外的 IO/内存负载和延迟,我想规避这些。

所有人的核心问题:

是否需要在 HTTP POST 请求中发送“Content-Length”标头?IIRC,HTTP 2616 声明它是可选的,但我不确定应用程序在这一点上的实际行为。

4

1 回答 1

31

取决于您所说的可选。如果您的意思是您可以随时省略标题,那么不,它不是可选的。HTTP 规范对何时使用该标头有非常具体的规则。如果您不知道长度,可以使用不同的方式发送数据。例如分块编码。

4.4 消息长度

于 2013-02-07T19:44:27.527 回答