Eduard Seibel: Sinn von Transfer-Encoding Chunked?

Beitrag lesen

Hallo!

Mittels des Header Feldes Transfer-Encoding: chunked wird ja bei dynamisch erzeugten Inhalten, bei denen die Größe im Moment des Requests nicht bekannt ist, die Daten Häpchenweise übertragen.

Ich frage mich nun, ob die Übertragung der fertig generierten Daten schon mal anläuft, bevor das Dokument vollständig generiert wurde.

Ich habe mir ein kleines PHP Script gemacht, welches 10 Zeilen Daten ausgibt und pro Zeile eine Sekunde wartet (sleep(1)) -> das Script läuft also 10 Sekunden lang. Transfer ist auch auf chunked gestellt. Trotzdem kommen alle Daten auf einmal nach dem 10 Sekunden verstrichen sind.

Das macht indem Fall doch keinen Sinn, dann würde man einfach warten bis es fertig generiert ist, und in den Header die Content-Lengh reinschreiben.

Warum also chunked Encoding, wenn sowieso gewartet wird bis das Dokument fertig generiert wurde?

Viele Grüße
Eduard Seibelk