Django 中间件---请求的生命周期
django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法。
在django项目的settings模块中,有一个 MIDDLEWARE_CLASSES 变量,其中每一个元素就是一个中间件,如下图。
与mange.py在同一目录下的文件夹 wupeiqi/middleware下的auth.py文件中的Authentication类
中间件中可以定义5个方法,分别是:
- process_request(self,request)
- process_view(self, request, callback, callback_args, callback_kwargs)
- process_template_response(self,request,response)
- process_exception(self, request, exception)
-
process_response(self, request, response)
django的自定义中间件提供了5个方法
process_request # 请求来时候 顺序 process_view # 请求通过中间件 view 之前 顺序 process_template_response # 模板返回之前的倒叙 process_response # 响应返回 一旦顺序出现return就会跳到最后一个response process_exp # 一旦后端应用程序报错 则会出发。倒叙
Django的请求周期:
1 请求来了,