Django中间件实现 * 的方法
作者:hupppppp 时间:2022-10-21 04:47:53
1.前言
JavaWeb Struts2的 * 我们都能很熟悉,在请求交给Action处理之前,先在 * 中处理,处理完之后再交给Action。
在Django中如何实现相同的效果?
2.Django中间件
这个是我的项目的目录结构。
首先,先在app目录(也就是我项目的web目录)中新建一个文件命名为middleware.py
里面加入以下代码:
try:
from django.utils.deprecation import MiddlewareMixin # Django 1.10.x
except ImportError:
MiddlewareMixin = object # Django 1.4.x - Django 1.9.x
class SimpleMiddleware(MiddlewareMixin):
def process_request(self, request):
return None
def process_response(self, request, response):
return response
在process_request中处理请求,process_response处理响应。
在process_request方法中,返回值为HttpResponse类型的对象的时候不交给普通的控制器处理,直接返回给浏览器,返回值为None的时候,请求处理完之后交给普通的控制器处理。
在settings.py文件的中间件配置中我们刚刚的中间件。
至此利用中间件做 * 的工作配置完成。
来源:https://blog.csdn.net/huplion/article/details/52723543
标签:Django,中间件, ,
0
投稿
猜你喜欢
python虚拟环境virtualenv的安装与使用
2023-07-01 00:23:00
用Python实现给Word文档盖章
2021-07-08 21:18:00
MySQL 8.0.19支持输入3次错误密码锁定账户功能(例子)
2024-01-28 04:48:00
python网络编程之多线程同时接受和发送
2021-12-01 07:20:09
详细解析Python当中的数据类型和变量
2023-01-18 23:27:07
利用Python将数值型特征进行离散化操作的方法
2023-12-02 02:43:36
mysql存储过程之游标(DECLARE)原理与用法详解
2024-01-25 14:23:50
浅谈Keras中fit()和fit_generator()的区别及其参数的坑
2022-04-18 07:22:26
Python实现自定义Jupyter魔法命令
2022-03-10 11:47:04
Go与C语言的互操作实现
2024-02-04 08:39:28
5个css布局的常见问题及解决方法
2009-11-19 13:21:00
Python标准库之日期、时间和日历模块
2021-04-11 17:05:14
使用GitHub和Python实现持续部署的方法
2022-07-16 22:54:35
在python3.64中安装pyinstaller库的方法步骤
2022-08-12 10:27:05
一文学会使用OpenCV构建文档扫描仪
2023-08-02 12:35:05
python基础教程之常用运算符
2021-09-07 00:11:47
Python configparser模块配置文件过程解析
2023-03-04 09:35:49
使用Python爬取最好大学网大学排名
2023-09-17 09:24:45
用 onerror 获取错误信息 js Debug
2008-11-03 19:08:00
详解Python文本操作相关模块
2022-01-13 23:23:19