dedlfix: Arbiträre (Meta-)Daten in ein HTML-Dokument einbetten

Beitrag lesen

Tach!

gzip wegen Dateigröße. Die ist zwar sekundär, aber wenn man problemlos sparen kann, kann man das ja trotzdem tun. Base64 müsste wahrscheinlich wirklich nicht zwingend sein, aber ich habe es andererseits auch noch nie wirklich gesehen, dass binary blobs in HTML-Quellcode stehen. Ich habe zugegebenermaßen nie darüber nachgedacht, warum das so ist. (Dass man da mehr Escaping braucht, ist geschenkt.)

Zum einen braucht es Escaping, sonst erkennt der Browser bestimmte Werte als Zeichen mit besonderer Bedeutung und verheddert sich womöglich in seinem Parse-Vorgang. Zum anderen kannst du dann nur Dokumente mit Ein-Byte-Kodierungen generieren, sonst werden die Binärdaten als fehlerhaft kodierte Zeichen erkannt, was dann auch zu Folgefehlern führen kann. Du brauchst eine Kodierung, die eine gültige Zeichenfolge in Bezug auf die Kodierung des Dokuments erzeugt. HTML ist nach wie vor noch ein zeichenbasiertes Format. Eine lediglich ASCII-Zeichen verwendende Kodierung ist zumindest (zuzüglich Maskierung) sicher in ISO-8859-* und UTF-8-Dokumente einzubetten, ohne dass man da noch dokumentkodierungsspezifisch umkodieren muss. Base64 hat sich halt durchgesetzt als ein in der Hinsicht problemloses Format. (Für UTF-16 beispielsweise müsste man man auch Base64 nochmal umkodieren (0-Bytes einfügen).)

dedlfix.