验证金字塔请求

Validating pyramid requests

我有一个包含许多已定义路线的金字塔应用程序。每当用户发出请求时,我想做一些不同的服务器端检查,如果满足某些条件,可能会重定向请求。

我意识到我可以将这些检查添加到每个视图函数中,但我想避免更新样板文件并将其添加到数十个视图函数中。

金字塔中是否有一种方法可以对所有请求执行一些检查,在将它们发送到视图函数之前

我相信您正在寻找 NewRequest 活动:

from pyramid.events import NewRequest
from pyramid.events import subscriber

@subscriber(NewRequest)
def new_request_subscriber(event):
    validate_request(event.request)

官方文档中的更多信息:
http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/events.html