Domanda

Sto utilizzando l'app framework webapp dell'app ( link ). È possibile aggiungere il middleware Django? Non riesco a trovare alcun esempio. Attualmente sto cercando di far funzionare il middleware FirePython ( link ).

È stato utile?

Soluzione

È facile: si crea l'applicazione WSGI come di consueto, quindi si avvolge l'applicazione nel middleware WSGI prima di eseguirla.

Vedi questo codice da Bloog per vedere com'è firepython aggiunto come middleware.

Altri suggerimenti

Il framework webapp GAE non esegue il mapping uno a uno al framework Django. Sarebbe difficile fare ciò che vuoi senza implementare un qualche tipo di adattatore da solo, non conosco adattatori di gestori di terze parti per farlo.

Detto questo, generalmente utilizzo la patch del motore dell'app in modo da poter utilizzare l'ultima versione 1.0.2 Django con AppEngine, e quindi puoi semplicemente includere il middleware Django nel modo normale con il file setup.py. Se necessario, probabilmente potresti guardare attraverso l'adattatore della patch del motore dell'app per vedere come lo fanno e iniziare con quello come framework.

&

quot; quot Middleware &; come inteso da Django è una sorta di processore richiesta / risposta, abbastanza diverso da quello che WSGI chiama " middleware " ;. Pensa: un middleware simile a django aggiungerà l'attributo session per richiedere l'oggetto basandosi su ciò che Beaker (middleware WSGI) ha inserito in environ['beaker.session']. Mentre l'aggiunta del middleware WSGI allo stack dovrebbe essere semplice (si lavora già a livello WSGI nel main.py), l'aggiunta del processore di richiesta / risposta dipende dal modo in cui la richiesta e la risposta sono astratte da WSGI.

Come è possibile farlo utilizzando Werkzeug (che è il set di strumenti WSGI di base) è descritto in wiki di Werkzeug e in uno dei suoi moduli contrib .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top