Django的中间件框架何时挂钩请求?

时间:2013-03-02 17:25:47

标签: django django-middleware

Middleware框架在将请求对象发送到urlconf之前是否挂钩了它? 此外,这个挂钩是否在经过WSGIHandler后发生? 那么,就这三个“层”而言,处理request的顺序是什么? WSGIHandler - >中间件 - > URL配置

1 个答案:

答案 0 :(得分:0)

WSGI处理程序协调对Python Web应用程序的所有请求;从技术上讲,您的WSGI处理程序是调用Django请求/响应进程的其余部分的代码。因此,如果您使用的话,一切都“通过”您的WSGI处理程序。

当请求进入时,Django将构造一个请求对象,并将其连续传递给每个已注册的中间件。然后将此请求对象传递给视图,该视图应返回可以序列化为有效HTTP响应的响应对象。由于url conf只是将模式映射到视图函数,因此匹配时无关紧要;最终,在中间件之后调用相应的视图。因此,您可以在视图代码中假设已经执行了任何已注册的中间件。

在Google上搜索过程this high level view