2009-07-06 5 views
3

Ich habe ein paar Artikel über Kometen Tech gelesen. Alle erwähnten, dass die Longlife-HTTP-Antwort Transfer-Encoding: chunked sein sollte. Ich frage mich, warum es chunked-codiert werden sollte. Wenn die Antwort nicht chunked-codiert ist, kann das Client-JavaScript den geantworteten Text trotzdem lesen und parsen, oder?Warum benötigt Comet Chunked-Encoding-Antwort?

Gibt es einen besonderen Grund, dass die Comet-Antwort chunked-codiert sein sollte?

Antwort

7

Chunked-codierte Antwort wird verwendet, wenn die Länge der Antwort nicht bekannt ist, bis die Antwort abgeschlossen ist. Ein leerer Chunk zeigt das Ende der Antwort an. Nur so kann der Client für das Ende der Antwort benachrichtigt werden.

All dies passt gut zu Comet. Sie senden den ersten Chunk, wenn die Anfrage empfangen wird. Sie können auch zusätzliche "Heartbeat" -Blöcke senden, während Sie auf den Abschluss einer Aktion warten. Ein leerer Chunk benachrichtigt den Client, dass die Antwort abgeschlossen ist.