phpbar.de logo

Mailinglisten-Archive

[php] fsockopen, fgest und HTTP

[php] fsockopen, fgest und HTTP

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Mit Jul 4 22:09:43 CEST 2007


Hi Yannik,

Am Mittwoch, 4. Juli 2007 schrieb Yannik Hampe:
> Lutz Zetzsche wrote:
> > Am Mittwoch, 4. Juli 2007 schrieb Norbert Pfeiffer:
> >> also mal unter Vorbehalt:
> >> In HTTP 1.1 wurde fest eingefuehrt, Seiten haeppchenweise
> >> auszuliefern. IMHO sind die Zahlen die Laenge der einzelnen
> >> Haeppchen in Hex oder Dec.
> >
> > an den Zusammenhang hatte ich auch schon einmal gedacht. In dem
> > Fall stellt sich mir die Frage, wie ich dann die Datei korrekt
> > auslese. :-) Wie finde ich diese Angaben, um sie entfernen zu
> > können? Die vierstelligen alphanumerischen Zeichenkombinationen
> > stehen ja immer separat in einer Zeile, also mit Zeilenumbruch
> > davor und dahinter. Aber Zeilenumbrüche finden sich ja überall in
> > der Datei...
>
> Warum in der HTTP-Spezifikation nachgucken, wenn man auch per
> trial&error zum Ziel kommt? Wenn jede dieser Hexzahlen die Länge
> eines Blockes beschreibt musst du dir nur die erste Hex-Zahl
> einlesen, die Länge lesen und erwarten, dass du nach dieser Länge die
> nächste Hex-zahl findest. Jetzt musst du dir nurnoch überlegen, wie
> genau diese Hexzahl zusammengehört.

mit ein Bißchen mehr Nachdenken hätte ich da wohl auf drauf kommen 
können... ;-( Aber ich war insgesamt etwas unsicher bei der ganzen 
Geschichte.

Du hast natürlich Recht. :-) Ich habe es gerade mal ausprobiert. Es 
funktioniert so. Nach dem Header kommt ein doppeltes CRLF. Dann folgt 
die erste hexadezimale Längenangabe mit anschließendem Zeilenumbruch. 
Wenn man dann von dort die angegebene Zeichenzahl weitergeht, kommt die 
nächste Angabe usw. Eigentlich ganz einfach, wenn man es einmal 
verstanden hat. ;-)

Vielen Dank,
Lutz

php::bar PHP Wiki   -   Listenarchive