cherrypy,在每个请求之前自动执行一些操作

时间:2012-03-05 07:47:20

标签: cherrypy

我想要执行多项操作并将其应用于发送到我的cherrypy服务器的每个请求。最常见的示例涉及阅读用户cookie以查看他是否有“记住我”的cookie,如果是,则自动登录用户,并将一些默认信息加载到会话中。

另一种可能性是检查会话是否已经存在,然后将一些用户信息加载到默认的Jinja2上下文中。

我希望每次请求都能完成此操作,理想情况下,我希望避免在每个函数前面手动设置装饰器。

我刚开始使用cherrypy 3的工具,而且关于我必须做什么的文档并不清楚。任何链接到示例的链接都非常感谢。

由于

1 个答案:

答案 0 :(得分:1)

您不必在功能前使用装饰器。相反,在config中声明该工具。请参阅http://docs.cherrypy.org/dev/concepts/tools.html#config-files,其中显示了为每个URL(及其所有子项)或每个类(及其所有子项)配置和启用工具的几种方法。例如,您可以在配置文件中打开所有URL的工具:

[/]
tools.sessions.on: True

自定义工具也是如此。