金字塔:Tween还是WSGI中间件用于定制记录器和外部授权系统?

2024-06-11 07:11:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想清楚地了解什么是最具Python式和更干净的实施方式:

  1. 自定义记录器。在
  2. 一段代码,通过REST连接到第三方授权系统,与内部金字塔ACL和权限系统相结合。在

我应该编写一个WSGI中间件来获取应用程序作为参数,还是为我的一个或两个需求编写一个纯金字塔呢?在

另外,哪个wsgi中间件或tween最符合apache+mod\wsgi?在

谢谢


Tags: 中间件代码restmod应用程序权限wsgi参数
2条回答

我不同意梅里克尔的观点。对于案例2,你肯定想用tween,因为它说的是“整合”。WSGI中间件被过度使用了-我的观点是如果你的应用程序需要一个中间件,那么它就不应该再是一个中间件了。请参见PEP 333作者的示例the excellent rant。在

此外,即使是你自己的应用程序的日志记录也应该在金字塔之间完成,因为api更干净,开销也更少。在任何情况下,如果需要的话,将其作为WSGI中间件编写是很简单的。在

作为WSGI中间件一切都更好,除非您需要特定于框架的细节。尤其是如果您很聪明并且使用webob装饰器将复杂的WSGI协议转换为简单的请求/响应对象。例如,当与权限集成时,我甚至不确定tween是否有意义。在groupfinder中,您只需连接到您的授权系统即可。对于日志记录,有很多WSGI(paste的translogger)和tween(pyramid_exclog,pyramid_debugtoolbar)两种日志记录器的示例,您可以从中获取想法。在

相关问题 更多 >