pl: multipart/form-data

Beitrag lesen

Ganz genau! Genau deswegen wird das Teil ja auch sequentiell zerlegt ;)

Ich rekapituliere nochmal, wie wir zu diesem Punkt in unserem Gespräch gelangt sind: Ich habe dir empfohlen die lexikalische Analyse deiner Eingabedaten mit einem Tokenizer durchzführen.

Nochmal: Dateien sind Sequenzen, sie werden sequentiell erzeugt und sequentiell gelesen. Ein Token ist letztendlich auch nur eine Sequenz.

Daraufhin glaubtest du, dass das mit Binärdaten nicht funktionieren könne.

Es kann schiefgehen. Besser als ein Tokenizer ist ein sequentielles Parsen auf Byte-Ebene. Vorausgesetzt, die Datei wurde zweckmäßig erstellt, was bei multipart/form-data nicht unbedingt zutrifft aufrund fehlender Längenangaben (siehe Eröffnungspost).

Trotz möglicher Kollisionen halte ich es nach Niklas Wirth und parse einen multipart/form-data sequentiell, das hat sich auch in CGI.pm bewährt was noch viel älter ist als meine eigenen Entwicklungen.

Wenn Du einen multipart/form-data unbedingt mit einem Tokenizer parsen möchtest, bitteschön, mach es einfach.

Und noch was: multipart/form-data ist im Grunde genommen Schrott. Es gibt Serialize-Algorithmen die zweckmäßiger sind und auch das Wiederherstellen der Daten wesentlich vereinfachen würden.