web-dev-qa-db-ja.com

HTTP POST:コンテンツ長ヘッダーが必要ですか?

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

すべての中核的な質問:

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

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

4.4メッセージの長さ

24
jdb