中间件:AOP中间件,在Django中内置了一些项目自带的中间件,那么中间件是什么呢
这里说明一下,一开始我也不太清楚中间件到底有什么用(大家也别急,下面会有详细的例子给大家解释)--------》
一、第一步:注册中间件文件
前两个是由我注册的,注册步骤类似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")
这是中间件的函数,无形中便可区分开来