43

現在、いくつかのアプリケーション間での http ベースのデータ転送を最適化しようとしています。最初にダウンロードしてからポスト リクエストを作成する現在のアプローチでは、IO/メモリの負荷とレイテンシが明らかに増加しますが、これは回避したいと考えています。

すべての核となる質問:

HTTP POST 要求で「Content-Length」ヘッダーを送信する必要がありますか? IIRC、HTTP 2616 ではオプションであると宣言されていますが、この時点でアプリケーションが実際にどのように動作するかはわかりません。

4

1 に答える 1

31

オプションの意味によって異なります。いつでもヘッダーを省略できるという意味であれば、いいえ、それはオプションではありません。HTTP 仕様には、そのヘッダーをいつ使用するかについて非常に具体的なルールがあります。長さが分からない場合は、さまざまな方法でデータを送信できます。たとえば、チャンクエンコーディング。

4.4 メッセージの長さ

于 2013-02-07T19:44:27.527 に答える