Django中间件

中间件:
浏览器像django发起请求的时候,请求先经过url,可以在url之前挂一个中间件,可在到view中也可以挂一个中间件,当django给浏览器返回数据的时候,我们也可以在其过程中挂一个中间件,不光这三个地方可以挂中间件。

process_exception(self,request,ecxeption),这个是当视图函数中出错的时候,这个中间件会捕捉

当中间件从视图函数出来之后,中间件的执行顺序从下到上进行执行就是谁的中间件后注册,谁就先执行
在这里插入图片描述

中间件必须继承from django.utils.deprecation import MiddlewareMixin这个类

class Mymw(MiddlewareMixin):
   	def process_request(self,request):
       	print("Mymw process_request do --")
 	def process_view(self,request,callback,callback_args,callback_kwargs):
 	#callback:当前请求对应的视图函数
 	#callback_args:函数对应的位置传参
 	#callback_kwargs:对应的关键字传参
   		 print("Mymw process_views do--")

    #这个是从视图函数出来响应的时候出来返回的
    def process_response(self,request,response):
        print("Mymw process_response do--")
        return  response

settings中找MIDDLEWARE,添加’middleware.mymiddleware.Mymw’,这个就是这个中间件的路径

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rebirth-LSS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值