一.中间件
是什么
Django中的中间件是一个轻量级、底层的插件系统,可以介入Django的请求和响应处理过程,全局修改Django的输入或输出。
干什么
如果你想修改请求,例如被传送到view中的HttpRequest对象。 或者你想修改view返回的HttpResponse对象,这些都可以通过中间件来实现。
在哪里:
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
二.中间件的原理与应用
中间件的原理
常用的钩子方法
process_request(self,request) # django 处理请求之前,会执行该方法
process_response(self, request, response) # django返回响应之后,执行该方法
定义与调用
创建定义中间件位置
自定义的中间件
第一个def
处理请求之前调用这个中间件
第二个def
视图返回相应之后返回这个中间件
三.中间件的注册与使用效果
中间件的注册
中间件的效果
正常的效果
错误的效果