Calocybe: Datenupload via HTTP, was ist zu beachten?

Beitrag lesen

Hi auch!

In Ergaenzung zu n.d. moechte ich noch sagen:

Apropos raten, sende ich ein gefaktes "Bild"(eine nach .jpg umbenannte zip-datei) wird diese von IE5.x korrekt übergeben und im CONTENT-TYPE als application/x-zip-compressed erkannt.

Nein, das ist nicht korrekt.

Die Netscape Fraktion scheint sich aber eher an der Endung zu orientieren und übergibt image/jpeg.

Nein, das mit dem HTTP funktioniert so: Der einzige, der wissen kann, welcher Art eine Datei ist, ist der Web*server*. Weil der Browser diese Information braucht, um die Daten richtig darstellen zu koennen, teilt der Server dem Browser diesen "Datentyp" mit dem Content-type Header mit. Der Wert in diesem Header (das was nach dem Doppelpunkt kommt) ist der MIME-Typ der Daten. Das, und nur das, gibt an, was das fuer Daten sind, und somit kann der Browser reagieren und sozusagen das entsprechende Anzeigemodul herauskramen.

Nun kommt aber der IE (seit Version 5) her, und meint, saemtliche Administratoren dieser Welt sind zu doof, ihren Webserver richtig zu konfigurieren, und schicken deswegen am laufenden Band falsche MIME-Types mit. Deshalb muss nach Meinung von M$ auf Clientseite ueberprueft werden, wie die Daten ungefaehr aussehen und sich dementsprechend ein eigener MIME-Type ausgedacht werden (wie dies genau von statten geht, steht auf http://msdn.microsoft.com/workshop/networking/moniker/overview/appendix_a.asp. Wie sinnvoll das ist, muss ich wohl nicht weiter kommentieren.

Und nun ist es also in Deinem Beispiel offenbar so, dass Netscape vom Server den Type image/jpeg gemeldet bekommt, und IE natuerlich auch, und Netscape tut, was er tun soll, naemlich versuchen das Bild anzuzeigen, IE aber erstmal die Daten untersucht und sich selber was dazu ausdenkt. Dass der gemeldete Typ nun image/jpeg ist, das liegt tatsaechlich an der Dateiendung, weil naemlich der *Server* so konfiguriert ist, fuer Dateien mit dieser Endung eben diesen Typ zu melden. Leider hat er kaum eine andere Chance, hoechstens indem er selber in der Art von IE die Daten begutachtet (http://httpd.apache.org/docs/mod/mod_mime_magic.html), was allerdings recht performancelastig ist. Hier waere fuer mich die logische Folgerung, den MIME-Type mit im Dateisystem zu speichern, mir ist jedoch kein Filesystem bekannt, das das tatsaechlich macht.

So, und jetzt hab ich verdammten Hunger und keine Lust mehr, weiterzuschreiben, und geh zur Doenerbude, weil ich seit gestern abend noch nix gegessen hab. *g*

So long