django 笔记14 中间件

用户请求->中间件->urls->views->返回字符串->中间件->用户浏览器
settings
MIDDLEWARE里面都是中间件
有的地方叫管道
请求来的时候都需要经过中间件
中间件 对所有的请求做统一操作
黑名单操作 ip段

基本要懂的:process_view process_request pocess_response

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'Middle.m1.Row1',
    'Middle.m1.Row2',  #路径 在django同级项目下的Middle目录下的m1.py中的Row1类

m1.py里写
from django.utils.deprecation import MiddlewareMixin
class Row1(MiddlewareMixin):
    def process_request(self,request):
        print('小白')

    def process_view(self, request, view_func, view_func_args,view_func_kwargs):
        pass   //views文件的映射关系

    def process_exception(self, request,exception):
        print(exception)  #views异常报错处理  ex
        if isinstance(exception, ValueError):
            return HttpResponse("出现异常了")

    def process_template_response(self, request,response):
        #如果View中的函数返回的对象中,具有render方法  基本不用
        print("!!!!!!!!!!!")
        return response

    def process_response(self,request,response):
        print('收到了2')
        return response
class Row2(MiddlewareMixin):
    def process_request(self, request):
        print('小黑')
    def process_response(self,request,response):
        print('收到了1')
        return response

 

转载于:https://www.cnblogs.com/Liang-jc/p/9220559.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值