Django2.2 中间件的使用

中间件:AOP中间件,在Django中内置了一些项目自带的中间件,那么中间件是什么呢

Django2.2 中间件的使用

Django2.2 中间件的使用

 

 

这里说明一下,一开始我也不太清楚中间件到底有什么用(大家也别急,下面会有详细的例子给大家解释)--------》

 

 

一、第一步:注册中间件文件

Django2.2 中间件的使用

前两个是由我注册的,注册步骤类似Django中的绝大多数文件注册----------写上文件的根目录即可

二、第二步:写中间文件的切点函数----------------   2.1举例--》指定ip用户抢票概率高

前面说到切点有很多,其中的   def process_request(self,request):就是用来解耦合的,通俗点就是举个例子:------设计一个函数时常会用到判断从而得到不同的输出,如果写在一起会显得很乱,于是用到

def process_request(self,request)  来解耦合,拆分出开,市面上的很多游戏都有新手必得奖励,这里的抽卡奖励就用到了类是中间件的东西,判断是新手则执行中间切点函数,跳过主程序的 一般抽卡函数,------------------------你是不是想到的什么。。。。。。。。。。。。。哈哈哈哈,非酋和欧皇的由来

#利用中间件来查看模拟抢手机的过程-------#模拟抢手机必中-----白名单---中间件 def get_phone(request): if random.randrange(100)>95: return HttpResponse("恭喜您,抢到小米20!") return HttpResponse("正在排队....")

这是原函数的判断过程----------


class HelloMiddle(MiddlewareMixin):#---------------------------------第一个类
#---------------------------------打印ip
def process_request(self,request):
print(request.META.get("REMOTE_ADDR"))#统计访问服务器的ip可用于进行数据分析
#
# #模拟抢手机必中-----白名单
# ip=request.META.get("REMOTE_ADDR")
#----------------------------------------------------
# if request.path=="/App1/getphone/":
# if ip=="127.0.0.1":
# if random.randrange(100)>30:
# return HttpResponse("恭喜您免费抢到小米20") 这是中间件的函数,无形中便可区分开来

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzwdwx.html