发布于 2014-10-25 12:16:39 | 126 次阅读 | 评论: 0 | 来源: 网友投递
Pyramid 轻量级开源Web开发框架
Pyramid也是一款轻量级的开源Python Web框架(也有java版),是Pylons项目的一部分。Pyramid只能运行在Python 2.x或2.4以后的版本上。在使用后端数据库时无需声明,在开发时也不会强制使用一些特定的模板系统。
本文为大家讲解了Pyramid添加Middleware的方法实例,感兴趣的同学参考学习下。
在pylons的文档中,有专门讲过如何添加自己的Middleware, 通过这些Middleware, 我们可以改变输入和输出。这也是WSGI(Web Server Gateway Interface)的优势和精髓所在,那么在pyramid中,我们如何添加Middleware呢
假设我们要添加一个我们自己的Middleware,用来记录每次请求的日志
下面就是一个符合规范的Middleware, 构造函数中接受一个WSGI APP, __call__返回一个WSGI APP.
def __init__(self, application):
self.app = application
def __call__(self, environ, start_response):
# write logs
try:
return self.app(environ, start_response)
except Exception, e:
# write logs
pass
finally:
# write logs
pass
在项目的__init__.py的main函数中, 在config.make_wsgi_app上包上一层我们的Middleware:
# Put middleware
app = LoggerMiddleware(app)
serve(app, host='0.0.0.0')