中间件;
中间件是一个轻量级的底层的插件,可以介入Django的请求和响应过程(面向切面编程),其本质就是一个python类
面向切面编程(Aspect Oriented Programming)简称AOP,AOP的主要实现目的时针对业务处理过程中的切面进行提取,他所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分低耦合的隔离效果
调用顺序
中间件注册的时候是一个列表
如果我们没有在切点处直接进行返回,中间件会依次执行
如果我们直接进行了返回,后续中间件就不再执行了
–可切入点
process_request | client——urls |
process_view | urls——views |
process_templates_response | views—…—templates |
process_response | templates——client |
–切入函数
__init__ | 没有参数,服务器响应第一个请求的时候自动调用,用户确定是否启用该中间件 |
process_request(self, request) | 在执行视图前被调用,每个请求上都会调用,不主动进行返回或返回HttpResponse对象 |
proce |