Django后端开发——中间件

文章目录


参考资料

B站网课:点击蓝色字体跳转

或复制链接至浏览器:https://www.bilibili.com/video/BV1vK4y1o7jH?p=39\&vd_source=597e21cf34ffcdce468ba00be2177e8a


中间件

请求------输入

响应------输出



注册中间件

mysite3-new-directory-middleware

middleware-new-pythonfile-__init__双下划线

middleware-new-pythonfile-mymiddleware

settings.py

c 复制代码
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'middleware.mymiddleware.MyMW',
]

middleware/mymiddleware.py

c 复制代码
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):

        print('MyMW process_views do ---')

    def process_response(self,request,response):

        print('MyMW process_response do ---')
        return response

mysite3/views.py

c 复制代码
def test_mw(request):
    print('---test_mw view in ---')
    return HttpResponse('--test-mw---')

mysite3/urls.py

c 复制代码
path('test_mw',views.test_mw),

多个中间件的执行顺序:请求时先注册的先执行,响应时先注册的后执行

练习

(持续更新中)


相关推荐
独好紫罗兰3 小时前
对python的再认识-基于数据结构进行-a003-列表-排序
开发语言·数据结构·python
AIFarmer3 小时前
在EV3上运行Python语言——无线编程
python·ev3
不会代码的小测试3 小时前
UI自动化-POM封装
开发语言·python·selenium·自动化
2401_841495643 小时前
【LeetCode刷题】二叉树的层序遍历
数据结构·python·算法·leetcode·二叉树··队列
毕设源码-钟学长3 小时前
【开题答辩全过程】以 基于Springboot的扶贫众筹平台为例,包含答辩的问题和答案
java·spring boot·后端
ZH15455891313 小时前
Flutter for OpenHarmony Python学习助手实战:GUI桌面应用开发的实现
python·学习·flutter
B站计算机毕业设计超人3 小时前
计算机毕业设计Hadoop+Spark+Hive招聘推荐系统 招聘大数据分析 大数据毕业设计(源码+文档+PPT+ 讲解)
大数据·hive·hadoop·python·spark·毕业设计·课程设计
B站计算机毕业设计超人3 小时前
计算机毕业设计hadoop+spark+hive交通拥堵预测 交通流量预测 智慧城市交通大数据 交通客流量分析(源码+LW文档+PPT+讲解视频)
大数据·hive·hadoop·python·spark·毕业设计·课程设计
CodeSheep程序羊3 小时前
拼多多春节加班工资曝光,没几个敢给这个数的。
java·c语言·开发语言·c++·python·程序人生·职场和发展
独好紫罗兰3 小时前
对python的再认识-基于数据结构进行-a002-列表-列表推导式
开发语言·数据结构·python