Seite 1 von 1

[WSGI] uploader für colubrid...

Verfasst: Mittwoch 25. Januar 2006, 09:05
von jens
Ich hab meinen Upload mal für colubird umgeschrieben... Aktueller Quellentext:
http://pylucid.python-hosting.com/file/ ... ploader.py

Eine Änderung ist nun, das man die Konfiguration seperat in einer Datei vornehmen kann und nicht mehr das HauptSkript ändern muß... Wie sowas aussieht kann man im Beispiel sehen:
http://pylucid.python-hosting.com/file/ ... example.py


@blackbird: Wie bekomme ich es nun als normales CGI zum laufen?

Verfasst: Mittwoch 25. Januar 2006, 13:32
von mitsuhiko
CGI:

Code: Alles auswählen

python uploader.py genhandler --interface-type cgi
Und das mit dem IE Filename wird auch schon direkt im FILES Parser übernommen. Also musst du das nicht extra nochmal tun.

Verfasst: Mittwoch 25. Januar 2006, 13:42
von jens
blackbird hat geschrieben:

Code: Alles auswählen

python uploader.py genhandler --interface-type cgi
Das verstehe ich jetzt nicht... Wie soll ich das in einer normalen CGI Umgebung, ohne shell-Accout, machen???
blackbird hat geschrieben:Und das mit dem IE Filename wird auch schon direkt im FILES Parser übernommen. Also musst du das nicht extra nochmal tun.
Das ist gut zu wissen ;)

Verfasst: Mittwoch 25. Januar 2006, 13:44
von mitsuhiko
jens hat geschrieben:
blackbird hat geschrieben:

Code: Alles auswählen

python uploader.py genhandler --interface-type cgi
Das verstehe ich jetzt nicht... Wie soll ich das in einer normalen CGI Umgebung, ohne shell-Accout, machen???
-.-"
Du führst es ja als Entwickler lokal aus :roll:
Und das was er dir ausgibt, speicherst du als "myapplication.cgi" ab.

Verfasst: Mittwoch 25. Januar 2006, 13:47
von jens
Bei mir passiert überhaupt nix. Keine Ausgaben...

Verfasst: Mittwoch 25. Januar 2006, 13:49
von mitsuhiko
jens hat geschrieben:Bei mir passiert überhaupt nix. Keine Ausgaben...
Du musst für die Datei ausführe, dass ein "app" Objekt hat.

Verfasst: Mittwoch 25. Januar 2006, 13:55
von jens
Jep, das war es...

Daraus kommt ein recht lange Skript... Kann man das nicht anders machen... d.h. nicht dynamisch erzeugen... Einfach den CGI-Server aus colubird importieren und damit arbeiten??? Der eigentlich code steckt ja schon in ./colubrid/execute.py

Verfasst: Mittwoch 25. Januar 2006, 13:59
von jens
So geht's doch auch:

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys
from uploader_cfg_example import app
try:
    from uploader_cfg_example import exports
except ImportError:
    exports = {}

from colubrid.execute import CGIServer

if __name__ == "__main__":
    CGIServer(app, exports).run()

Verfasst: Mittwoch 25. Januar 2006, 14:03
von mitsuhiko
Klar kann man. Er kopiert ja auch den Server heraus, nur, dass er keinen Import macht, sondern den Server wirklich rüberzieht.
Aber eigentlich ist es schachmatisch, was ich da mach, ein Import tuts auch.
Werde das dann fixen.

Verfasst: Mittwoch 25. Januar 2006, 17:47
von jens
So, hab nun eine neue Version gemacht... Diese kann dann auch die Dateien wieder zum Download anbieten:

http://pylucid.python-hosting.com/file/ ... ploader.py

Verfasst: Donnerstag 26. Januar 2006, 14:52
von jens
Also was mir persönlich noch nicht so ganz gefällt ist die process_request() Methode...

Also in PyLucid kann ich ein der Config zu einem Plugin sagen, welche Methoden ausgeführt werden, abhängig vom vorhandensein von POST/GET Daten...

Wäre auch in dem Fall praktisch, was ich ja jetzt so mache:

Code: Alles auswählen

...
if 'download' in self.request.GET:
...
if 'upload' in self.request.FILES:
...
@blackbird: Baust du sowas eigentlich noch ein?

Verfasst: Mittwoch 1. Februar 2006, 22:18
von jens
So, ich hab das ganze mal geupdated... Nun läuft der Uploader als colubrid PathApplication

Aktueller Sourcecode: http://pylucid.python-hosting.com/file/ ... ploader.py