2009-07-06 2 views
3

私はComet techについての記事を読んでいます。すべての人が長寿命のHTTPレスポンスはTransfer-Encoding:chunkedでなければならないと述べました。私はそれがなぜチャンクエンコードされるべきなのか疑問に思っています。応答がチャンクエンコードされていない場合、クライアントのJavaScriptは依然として応答されたテキストを読み込んで解析することができます。なぜChunked-EncodingレスポンスがCometに必要ですか?

Cometレスポンスをチャンクエンコードする特別な理由はありますか?

答えて

7

チャンク符号化応答は、応答が完了するまで応答の長さがわからない場合に使用されます。空のチャンクはレスポンスの終了を示します。これは、クライアントが応答の最後に通知される唯一の方法です。

これはすべてCometにうってつけです。要求が受信されると、最初のチャンクを送信します。また、アクションが完了するのを待っている間に、追加の「ハートビート」チャンクを送信することもできます。空のチャンクは、応答が完了したことをクライアントに通知します。

関連する問題