## 中间件
之前面试时对django的中间件一直是囫囵吞枣记个概念,面试的时候老大最后问了这个问题还是直接说的不知道... 今天重新再看中间件,经过几个月的工作可以说对中间件的概念以及具体作用有了一个清晰的认识了
<br>
****
中间件,简单直观的来说,实际上就是在应用代码的视图函数接触到前端请求之前和在前端接触到后端响应之前更早接触到的前端请求和后端响应并对之进行处理的后端逻辑(没有使用视图函数是因为确实很多中间件的处理逻辑不一定在前端有明显展示)
上面这话可能有点拗口,但是看一幅图就很容易理解了
![](https://box.kancloud.cn/1eed0299f2ff318f75a5089767700357_641x545.png)
上图可以说非常直观的描述了django自带的五个中间件在前后端之间所起的作用
中间件实际上就是指定了接口名称的一系列后端处理函数
1. 处理前端请求的函数: process_request, process_view
2. 处理后端响应的函数: process_exception, process_template_response, process_response
参考链接:
1. [自强学堂:django中间件](https://code.ziqiangxuetang.com/django/django-middleware.html)
- Django基础
- 模型
- 外键
- Model Manager
- 过滤器函数
- 查询对象
- 字段的细节
- QuerySet的应用
- 视图
- Django类视图
- 权限控制
- Django进阶
- 中间件
- _meta组件
- 信号
- User模块
- prefetch_related和select_related的区别
- 较少被用到的查询对象
- Django的深层设计理念
- Declarative Syntax
- django的migration操作
- 较少用到的Queryset方法的一些坑
- Django配置
- Django环境配置变量
- Django源码阅读
- ORM
- QuerySet源码
- Query源码
- Q&F
- Model和Manager的详解
- Http请求响应
- HttpRequest
- 自建数据结构
- Django开发辅助工具
- Django-rest-framework
- Serializer
- 异步任务调度器Celery
- 数据库补充
- 定义
- 字段
- 事务
- 视图
- 函数
- 联结
- 窗口函数
- GROUPING运算符
- HAVING谓词
- django_bulk_update
- django_bulk_update源码分析
- 项目小功能开发
- Django的一些小细节