中间件的应用
Posted anle123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了中间件的应用相关的知识,希望对你有一定的参考价值。
流程
客户端发起请求 –> 进到wsgi(模型) –> 中间件(request_process) –> 路由(urls.py) –> 中间件(view_process) –> view(视图操作 -> orm操作 -> mysql ) –> 中间件(process_response before_template) –> wsgi(模型)
在Python项目中一直都在有使用中间件,在django项目中的setting.py文件中看到MIDDLEWARE配置项
1
|
#加载自定义中间件 文件夹名.文件名.类名
|
导入
1
|
from django.utils.deprecation import MiddlewareMixin
|
中间件的四种方法
1
|
# 自定义中间件
|
? 1.中间件的process_request方法是在执行视图函数之前执行的
? 2.当配置中间件时,会按照MIDDLEWARE的注册顺序,也就是列表的索引值,从前到后依次执行的。
? 3.不同中间件之间传递的request都是同一个对象。
中间件的应用场景
1.做IP限制 –> 放在中间件类的列表中,阻止某些ip访问;
2.URL访问过滤 –> 如果用户访问的是logo视图(放过)如果访问其他视图,需要检测是否已经有session或localstrage,已经有了放行,如果没有返回login,这样就省的在多个视图函数上写装饰器了!
以上是关于中间件的应用的主要内容,如果未能解决你的问题,请参考以下文章
ruby 如果你想在heroku上为你的中间人应用程序添加基本身份验证,这是一个添加到middleman的config.ru文件的片段
Spring Rest 文档。片段生成时 UTF-8 中间字节无效 [重复]