Seite 1 von 1

HTTPServer in Python

Verfasst: Mittwoch 19. April 2006, 11:31
von Zilchinger
Hi,
ich habe in Python einen WebServer gebastelt, der mir eigene Requests abarbeitet.

Hier ein Beispiel:
http://ip:port/getMySong -> ist der Request vom Browser

Mein eigener BaseHTTPRequestHandler nimmt diesen Request entgegen und sendet ein bestimmtes File zurück.

Das ganze klappt auch, jedoch steht im Downloaddialog des Browsers immer "getMySong" als Dateiname.

Weiß jemand wie ich das ändern kann? Z.B. in song.mp3!

Danke schonmal :)
Zilchinger

Re: HTTPServer in Python

Verfasst: Mittwoch 19. April 2006, 12:25
von gerold
Zilchinger hat geschrieben:Das ganze klappt auch, jedoch steht im Downloaddialog des Browsers immer "getMySong" als Dateiname.
Hi Zilchinger!

Du musst den Dateinamen im Header deines Responses zurück geben.
Siehe: http://www.python-forum.de/post-24838.html#24838

In einem CGI-Skript würde das wahrscheinlich so aussehen:

Code: Alles auswählen

f = file("irgendeineDatei.pdf", "rb")
pdf = r.read()
f.close()

print "Content-Type: application/pdf"
print "content-length: %s" % len(pdf)
print "content-disposition: attachment; filename=seavas.pdf"
print
print pdf
mfg
Gerold
:-)

Verfasst: Mittwoch 19. April 2006, 12:46
von Zilchinger
Hallo Gerold,
nach kleinen Anpassungen hab ich es hinbekommen.

Ist schon Klasse, wenn man sich mit dem HTML-Protokoll nicht auskennt, ich glaub ich sollte mir das mal etwas genauer anschauen, :lol:

Danke nochmal,
Zilchinger