您的位置:首页 > 编程语言 > Go语言

Django--中间件

2016-03-16 12:27 316 查看

1、原理

在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法。

请求到来时,在wsgi和urls中间有一层中间件,准确的说是4层方法和Django框架的处理:

process_request(self,request)

process_view(self, request, callback, callback_args, callback_kwargs)

views

process_exception(self, request, exception)

process_response(self, request, response)

这些函数的名称和参数不能改变,任何一个环节具有Response,就会交给process_response()处理,从而返回给用户。

2、自定义中间件

创建package


middle1.py
settings.py

views.py
IDE


可以看到执行顺序,注意的是,process_response()的执行顺序是从后往前的。


3、源码

4、process_exception

views.py
middleware/middle.py
browser



IDE



注意:​process_request和process_view方法是按自定义中间件的顺序执行

process_exception和process_response是按中间件从后往前的顺序执行



来自为知笔记(Wiz)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: