文章图片
文章图片
文章图片
1.什么之django中间件?
Django中的中间件是一个轻量级、底层的插件系统 , 可以介入Django的请求和响应处理过程 , 修改Django的输入或输出 。 中间件的设计为开发者提供了一种无侵入式的开发方式 , 增强了Django框架的健壮性 。
我们可以使用中间件 , 在Django处理视图的不同阶段对输入或输出进行干预 。
2.django中间件的作用是什么?
如果想要修改HttpRequest或者HttpResponse , 就可以通过中间件来实现 。
·登陆认证:在中间件中加入登陆认证 , 所有请求就自动拥有登陆认证 , 如果需要放开部分路由 , 只需要特殊处理就可以了 。
·流量统计:可以针对一些渲染页面统计访问流量 。
·恶意请求拦截:统计IP请求次数 , 可以进行频次限制或者封禁IP 。
3.django中间件怎么设置
1)在当前根目录文件夹下新建一个文件夹名为middleware
2)新建两个py文件分别是__init__.py和mymiddleware.py文件
3)在mymiddleware.py文件中设置中间件:
第一步 , 引入中间件的方法
第二步 , 定义中间件方法(其中None或者没有写return返回值代表不拦截 , 否则代表拦截):
①process_request (self , request)
执行路由之前被调用 , 在每个请求上调用 ,返回None或HttpResponse对象
②process_view (self , request , callback , callback_args ,
callback_kwargs)
调用视图之前被调用 , 在每个请求上调用 ,返回None或HttpResponse对象
【中间件|超详细!django中间件用法以及实例操作】③process_response (self , request , response)
所有响应返回浏览器被调用 , 在每个请求上调用 , 返回HttpResponse对象
4)在setting.py中设置middleware进行注册:
注意事项 , 如果出现以下错误提示 , 将setting.py中的{改为[
即可 。
- 小米科技|预算只有两三千买这三款,颜值性能卓越,没有超高预算的用户看看
- CPU|元宇宙+高端制造+人工智能!公司已投高科技超100亿,股价仅3元
- 计算|雄安城市计算(超算云)中心主体结构封顶
- 分成|YY直播:2021年公会和主播分成超50亿
- 封顶|雄安新区:城市计算(超算云)中心提前完成主体结构封顶
- 三星|三星手机Soc搭载AMD Radeon GPU曝光,运行频率超过苹果A15
- 微信聊天最令人头疼的场景是什么?一定有人会说是对方发来一连串语音还都是超过30秒的长消息...|终于!微信上线万众期待的新功能!网友:总算等到了
- 44岁接手亏损超500万厂子,他却靠火腿肠雄起,缔造600亿
- 封顶|雄安新区:城市计算(超算云)中心提前完成主体结构封顶
- 显示器|年货节联合回馈,华硕显示器与雷孜推出超值创艺套装!