前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >day69-Django进阶-中间件

day69-Django进阶-中间件

原创
作者头像
少年包青菜
修改2020-03-12 15:11:47
3040
修改2020-03-12 15:11:47
举报
文章被收录于专栏:Python 学习

1.运作周期

自己做的,实在受不了了,太难受了
自己做的,实在受不了了,太难受了

2.使用

from django.utils.deprecation import MiddlewareMixin # 指定py文件里面导入

3.具体描述

代码语言:javascript
复制
参数 执行时间 执行顺序 返回值 
			
			
			1. process_request
				1. 执行时间	
					在视图函数执行之前
					
				2. 参数
					request  ——》 视图函数中用到的request
				3. 执行顺序
					按照注册顺序顺序执行
					
				4. 返回值
					None   正常流程走
					HttpResponse对象  
						当前中间件后面的中间件的process_request和process_response方法、视图函数都不执行
						执行当前中间的process_response方法以及之前的中间的process_response方法
						
			2. process_response
				1. 执行时间
					在视图函数执行之后
				2. 参数
					request  ——》 视图函数中用到的request
					response  —— 》视图函数中返回的response
					
					
				3. 返回值
					必须是response对象
					
				4. 执行顺序
					按照注册顺序倒叙执行
			3. process_view
				1. 执行时间
					在process_request之后,以及路由匹配之后,在视图函数执行之前
					
				2. 参数
					view_func     ——》 要执行的视图函数
					view_args     ——》 视图函数的位置参数
					view_kwargs   ——》 视图函数的关键字参数
					
				3. 返回值
					None  正常走
					
				4. 执行顺序
					按照注册顺序顺序执行
					
					
			4. process_exception(self, request, exception)
				1. 执行时间(触发条件:有异常才执行)
					在视图函数之后,在process_response之前
				2. 参数
					exception ——》 错误信息对象
				
				3. 返回值
					None  正常走
					HttpResponse对象  
						注册顺序之前的中间件的process_exception方法不走了。
						执行所有中间件的process_response方法
					
				4. 执行顺序
					按照注册顺序倒叙执行
			
				
			5. process_template_response
				1. 执行时间(触发条件:response对象要求有一个render方法)
				
					在视图函数之后,在process_response之前
					
				2. 参数
				
				3. 返回值
					返回response
				4. 执行顺序
					按照注册顺序倒叙执行
					
				

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.运作周期
  • 2.使用
  • 3.具体描述
相关产品与服务
消息队列 TDMQ
消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档