首页 > 其他分享 >django---中间件

django---中间件

时间:2022-11-19 23:45:16浏览次数:61  
标签:请求 process 发送给 中间件 django --- 方法

中间件

当用户发送请求时,其实时候是将请求发送给wsgi(一种协议),django使用的是wsgiref,然后再将请求发送给django的各个中间件(settings里的MIDDLEWARE表示使用的中间件),再由中间件发送给django的路由系统。

django的中间件执行流程

 

 

 

 

如何自定义中间件

如图,每个django的中间件必要要有以下两个方法

 

process_request()方法:

该方法表示当请求来的时候,这个中间件需要干做哪些事情,如果这个函数有返回值,那么请求就会直接返回了,而不会走路由系统和视图函数了

 process_response()方法:

表示当请求走完视图函数后并且返回后,首先也是返回到中间件,然后经过process_response()方法,再将响应发送给用户

 

自定义中间件其他方法:

process_view()

 

 

参考文章:https://www.cnblogs.com/sch01ar/p/11516813.html

 

标签:请求,process,发送给,中间件,django,---,方法
From: https://www.cnblogs.com/powfu/p/16907541.html

相关文章

  • 补档--【THM】HTTP in detail(HTTP协议介绍)-学习
    本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/httpindetail通过学习相关知识点:了解如何使用HTTP协议向Web服务器请求内容。什么是HTTP(S)?什么是H......
  • 【Spring系列】- Bean生命周期底层原理
    Bean生命周期底层原理......
  • django--路由系统
    django路由系统 --动态路由 #----urls.py----------urlpatterns=[path('admin/',admin.site.urls),path('index/',views.index),re_path(r'edit/(\w*)/',vi......
  • django--基础知识
    --安装pipinstalldjango--创建一个django项目django-adminstartproject项目名--创建一个应用pythonmanage.pystartappapp01--启动django项目pythonmange.py......
  • Linux大神必备-文本编辑器
    我们在 Linux 上不缺乏非常现代化的编辑软件,但是它们都是基于GUI(图形界面)的编辑软件。正如你所了解的:Linux真正的魅力在于命令行,当你正在用命令行工作时,你就需要一......
  • uni-app官方demo新闻资讯笔记
    pages.json768及以上屏幕显示rightWindowmain.js App.mpType="app"没在官方找到对应说明条件编译#ifdef:ifdefined仅在某平台存在#ifndef:ifnotdefined除......
  • MAUI新生1.4-XAML语法基础:x命名空间xmlns:x
    x命名空间,又叫XAML命名空间,作用于XAML的编译过程。我们知道,XAML代码,最终通过XAML编译器,编译为中间代码IL,并与后台C#代码的编译结果合并。而在编译的过程中,经常需要告诉编译......
  • AtCoder Beginner Contest 278-D
    D-AllAssignPointAdd 题目链接:https://atcoder.jp/contests/abc278/tasks/abc278_d刚开始的思路是进行操作1的时候,将整个数组都赋成......
  • 散乱的思绪-2022.11.19
    我是一个什么都想要,梦想着一步登天的妄想者。我没有一颗聪明绝顶的脑袋,也没有出众样貌,更没有父母的日复一日劳作的毅力。有时候我在想,我是一个什么样的人呢?在我看来我大概......
  • 管理心得--不要破坏团队的自愈系统
    下面这段话来自得到APP,我觉得说的很好。----------------------------------------------据说匈牙利医生伊格纳兹说过这么一句话:“在医学上,有一个头号秘密是:绝大多数的疾......