Django中间件

django默认有七个中间件 并且支持用户自定义自己的中间件
1 django暴露给用户五个可以自定义的方法
需要掌握的
process_request
1.请求来的时候 会按照settings配置文件中从上往下的顺序依次执行每一个中间件里面的该方法
2.中间件里面如果没有定义该方法 直接跳过执行下一个
3.该方法内如果你自己返回了HttpResponse对象 那么不再往后执行 直接跳到同级别的process_response方法
process_response
1.响应走的时候 会按照settings配置文件中从下往上的顺序依次执行每一个中间件里面的该方法
2.该方法必须将形参response返回
3.如果没有定义该方法 直接跳过执行下一个

            需要了解的
                process_view
                    当路由匹配成功之后执行视图函数之前
                
                process_exception
                    当视图函数中出现bug的时候 自动触发
                
                process_template_response
                    返回的对象中 必须含有render方法 才会触发
        2.如何自定义
        
            1 新建一个专门用来存放中间件的文件夹 里面新建任何名称的py文件
            在该文件中 需要写类并继承MiddleMixin
            class MyMiddle(MiddleMixin):
                # 自定义上面的五个方法
            
            2 需要在setting配置文件中注册你写的中间件
                需要你自己手动书写字符串的路径  写到类名为止