Frank Berbuir: Download aus CGI

Beitrag lesen

Hallo!

Ich möchte folgendes Problem lösen:

Die Eingaben in einer HTML-Form werden von einem CGI ausgewertet. Das CGI generiert daraus eine binäre Datei, die der User herunterladen soll.

Um nun nicht den Web-Server vollzumüllem, möchte ich diese binäre Datei so als Antwort von CGI ausgeben, daß der IExplorer und der Netscape Browser den 'Save as' Dialog ausgeben und die Datei speichern. Dadurch kann das CGI die Datei nach der Ausgabe sofort löschen.

Mit der folgenden CGI-Ausgabe gelingt mir das auch.

Content-type: application/x-ooo; name="DATEI.BIN"
  Content-disposition: inline; filename="DATEI.BIN"

.. daten in binärer form ....

Der Netscape Navigator mach alles richtig (bietet 'save as' und setzt beim 'Speicher unter' den richtigen Namen 'DATEI.BIN').

Der MS Internet Explorer setzt beim Speichern unter aber immer den Namen des CGI's ein. Das CGI ist ein Executable in C++, sodaß der IExplorer immer CGI.EXE als Dateinamen vorschlägt.

Laut meinen MIME Unterlagen sollte das, was ich da mache, richtig sein.

Weiß einer, wie man den IExplorer dazu bewegt, die Ausgabe des CGI's unter einem anderen Namen zu speichern?

PS: Das scheint auch noch WebServer abhängig zu sein. In einem internen Netz mit OmniHttpd als WebServer, zeigt der IExplorer die binären Daten an (also Blubber im Fenster) und der Netscape kann plötzlich auch nicht mehr den Dateinamen richtig setzen. Ich weiß leider nicht, welche Software mein Provider gerade benutzt.

Vielen Dank im Voraus
Frank