wsgi_lite fournit une meilleure façon d'écrire des applications WSGI et middleware.
Ne serait-il pas agréable si l'écriture middleware WSGI correcte était simple?
>>> From wsgi_lite importation Lite, alléger
>>> Latinator def (app):
...
... # Assurez-vous que `app` peut être invoquée via le protocole Lite, même
... # Si elle est une norme WSGI 1 de l'application:
... App = alléger (app)
...
...lite
... Def middleware (environ):
... État, têtes, corps = app (environ)
... Pour le nom, la valeur d'en-têtes:
... Si name.lower () == 'content-type "et la valeur ==' text / plain ':
... Pause
... Else:
... # Non text / plain, transmettre la requête inchangée
... Le statut de retour, têtes, corps
...
... # Bande de longueur de contenu si elle est présente, sinon ce sera mauvais
... headers = [
... (Nom, valeur) pour le nom, la valeur des en-têtes
... Si name.lower ()! = "Content-Length"
...]
... Le statut de retour, en-têtes, (piglatin (données) pour les données dans le corps)
...
... Retour middleware
En utilisant seulement deux décorateurs, WSGI Lite vous permet de créer des applications middleware et correcte et conforme, sans avoir à se soucier start_response, écrire et appels à proximité. Et avec ces deux mêmes décorateurs, il vous permet également de gérer les ressources doit être publié à la fin d'une demande, et automatiquement passer des arguments de mots clés à vos applications ou middleware qui sont obtenus à partir de l'environnement de WSGI (comme les extensions serveur de WSGI ou middleware fourni paramètres tels que la demande ou de la session objets).
Pour plus de détails, consultez la page d'accueil du projet sur BitBucket, et descendez à la table des matières.
WSGI Lite est actuellement disponible uniquement pour Python 2.x (testé w / 2.3 à 2.7), mais la source doit être tout à fait portable à 3.x, que sa magie est limitée à l'inspection des noms d'argument de fonction, et le clonage en utilisant les fonctions new.function . ()
Exigences :
- Python
Commentaires non trouvées