我正在使用appengine webapp框架(链接)。可以添加Django中间件吗?我找不到任何示例。我目前正在尝试使FirePython中间件工作(链接)。
如何将中间件添加到Appengine's webapp框架中?
原标题:
最佳回答
很简单:按照正常的方式创建WSGI应用程序,然后在执行前将该应用程序包装在WSGI中间件中。
请查看Bloog中的此代码,了解如何将firepython添加为中间件。
问题回答
GAE网页应用框架与Django框架不是一对一的映射关系。如果没有实现某种自适应接口,实现您想要的操作将很困难,我不知道是否有第三方处理程序适配器可实现此操作。
尽管如此,我通常使用app-engine-patch,这样我就可以使用最新的1.0.2 Django版本与AppEngine一起使用,然后您可以通过setup.py文件按照正常方式包含Django中间件。如果需要的话,您可能需要查看app-engine-patch的适配器以了解他们是如何做的,并以此作为框架的起点。
Django 理解的“中间件”是一种请求/响应处理器,与 WSGI 所称的“中间件”非常不同。想象一下:像 Django 的中间件会根据 Beaker(WSGI 中间件)放置在 environ [beaker.session]
中的内容,向请求对象添加 session
属性。在堆栈中添加 WSGI 中间件应该很简单(您已经在 main.py
中使用了 WSGI 级别),添加请求/响应处理器取决于请求和响应从 WSGI 抽象出来的方式。
如何使用Werkzeug(基本WSGI工具集)完成此操作,在Werkzeug的wiki和其中一个贡献模块中有介绍。
相关问题
热门标签
- winforms
- combobox
- fogbugz
- java
- date
- internationalization
- asp.net
- iis
- url-rewriting
- urlrewriter
- c#
- enums
- ocaml
- haxe
- algorithm
- string
- viewstate
- .net
- c++
- c
- symbol-table
- mysql
- database
- postgresql
- licensing
- migration
- vb.net
- vb6
- declaration
- vb6-migration
- python
- psycopg2
- backup
- vmware
- virtualization
- gnu-screen
- authentication
- desktop
- excel
- xll
- cultureinfo
- regioninfo
- oracle
- client
- session
- download
- html
- virtual
- constructor
- scenarios
- perl
- full-text-search
- javascript
- ajax
- testing
- oop
- inheritance
- vim
- encapsulation
- information-hiding