Como a adição de middleware para framework web app App Engine?
-
20-08-2019 - |
Solução
É fácil:. Você criar o aplicativo WSGI como por normal, em seguida, enrole essa aplicação em sua middleware WSGI antes de executá-lo
este código de bloog para ver como FirePython é adicionado como middleware.
Outras dicas
O quadro webapp GAE não mapeia um para um para o framework Django. Seria difícil fazer o que quiser sem implementar algum tipo de adaptador de si mesmo, eu não sei de quaisquer terceiros adaptadores manipulador partido para fazer isso.
Dito isso, eu geralmente usam o app-engine-patch para que eu possa usar a última 1.0.2 liberação Django com AppEngine, e então você pode apenas incluir o Django middleware da forma normal com o arquivo setup.py. Se você precisava, você provavelmente poderia olhar através de adaptador do app-engine-patch para ver como eles fazem isso, e começar com isso como um quadro.
"Middleware", como entendido por Django é um tipo de processador de pedido / resposta, bem diferente do que WSGI chama de "middleware". Pense: Django-como middleware irá adicionar atributo session
ao pedido objeto baseando no que taça (middleware WSGI) colocou em environ['beaker.session']
. Ao adicionar WSGI middleware à pilha deve ser simples (você já trabalho em nível WSGI em sua main.py
), acrescentando pedido processador / resposta depende de como solicitação e resposta são abstraídos do WSGI.
Como isso pode ser feito usando Werkzeug (que é conjunto de ferramentas básicas WSGI) é descrito em de Werkzeug wiki e em um de seus contrib módulos .