Halihallo Andreas
Ich bechäftige mich immer noch mit der Datenübertragung, genauer mit der Übertragung eines gzip-Strings über HTTP.
Es gab 2 Varianten, einmal als urlencoded als einfache POST-Variable, aber dadurch wurde der gzip-String 3 mal so lang(durch urlencode), das ist mir etwas zu viel des guten.
Da wurde mir aber auch in diesem Zusammenhang base64 angeraten, nur habe ich dazu eine Frage. Ich habe mal testweise einen Binärstring mit base64 codiert, sieht ganz gut aus, nur wenn ich diesen String jetzt als urlencoded übertrage, bekomme ich da auch kein Probleme? z.B. kommen in dem base64-String "=" vor, wenn jetzt noch ";" oder "&" vorkommen kann ich das ganze ja vergessen!
Die andere Variante ist ja über multipart/form-data, aber da muß ich serverseitig den Umweg über eine temporäre Datei gehen, aber dafür kann ich den "blanken" binären Daten übertragen!
Wobei mir die erste Variante doch etwas lieber wäre, gerade bei weniger Datenvolumen. Hat da jemand Erfahrung mit base64?
Nun, base64, wie der name schon sagt, bildet dir jeden String in einen zweiten ab, der ausschliesslich _nur_ folgende Zeichen enthält:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
ist aber auch sehr ineffizient (ich meine, er verschwendet auch ungeheuerlich viel Platz). Das einzige, was also Probleme geben könnte, ist das '+', welches als Space (0x20) dekodiert wird und eventuell das Zeichen '/', welches du umbedingt kodieren musst, da es sonst als "Unterverzeichnis-Token" interpretiert wird...
Viele Grüsse
Philipp