关于Django的中间件使用说明。

目录

    • 1.中间件
    • [2. 为什么要中间件?](#2. 为什么要中间件?)
    • [3. 具体使用中间件](#3. 具体使用中间件)
      • [3.1 中间件所在的位置:在django的settings.py里面的MIDDLEWARE。](#3.1 中间件所在的位置:在django的settings.py里面的MIDDLEWARE。)
      • [3.2 中间件的创建](#3.2 中间件的创建)
      • [3.3 中间件的使用](#3.3 中间件的使用)
    • [4. 展示成果](#4. 展示成果)

1.中间件

中间件的大概解释:在浏览器在请求服务器的时候,首先要经过各种中间件,然后进行GET、POST等请求的访问,然后处理数据,最后经过各种中间件输出给浏览器。

我们可以利用中间件的特性,来解决用户登录过程中的繁琐问题。

2. 为什么要中间件?

在我们用django写后端服务的时候,需要很多url,但是有没有想过一个问题,就是直接获取url,跳过登陆的url直接访问后面的网页。这样的话,那负责用户登陆的url有什么用呢?

所以我们需要中间件来解决这种问题。

3. 具体使用中间件

3.1 中间件所在的位置:在django的settings.py里面的MIDDLEWARE。

3.2 中间件的创建

首先在项目目录里面随便创建一个文件夹,然后在里面创建一个py文件,最后添加到中间件的对应位置。

注意:在中间件里面,执行顺序是从上到下的,所以我们创建的中间件最好放在后面,以免产生不必要的错误。

3.3 中间件的使用

在新创建的中间件的文件里面写入相应的代码。(具体看注释即可。)

然后在对应的登陆的url的view.py的登陆函数里面写入相应的代码即可。

4. 展示成果

正常的登陆页面如下:

登陆成功后进入下面的页面:

当你把浏览器的session清除掉之后,重新输入http://127.0.0.1:8000/depart/之后,django会自动跳转到登陆页面,只有登陆成功在可以访问后续的其他页面。

相关推荐
清静诗意3 分钟前
Django from_queryset 源码深度解析:动态生成 Manager 的奥秘
django·queryset
百锦再4 分钟前
对前后端分离与前后端不分离(通常指服务端渲染)的架构进行全方位的对比分析
java·开发语言·python·架构·eclipse·php·maven
Blossom.1181 小时前
把AI“刻”进玻璃:基于飞秒激光量子缺陷的随机数生成器与边缘安全实战
人工智能·python·单片机·深度学习·神经网络·安全·机器学习
Kratzdisteln1 小时前
【Python OOP Diary 1.1】题目二:简单计算器,改错与优化
python·面向对象编程
小白银子1 小时前
零基础从头教学Linux(Day 53)
linux·运维·python
EndingCoder2 小时前
MongoDB基础与Mongoose ODM
服务器·javascript·数据库·mongodb·中间件·node.js
skywalk81632 小时前
基于频域的数字盲水印blind-watermark
linux·开发语言·python
applepie_max2 小时前
GraphRAG本地部署 v2.7.0
python·rag·graphrag
sulikey2 小时前
从零配置一个规范的 Python Git 仓库(适用于 Gitee / GitHub)
git·python·pycharm·gitee·github
shaominjin1232 小时前
android在sd卡中可以mkdir, 但是不可以createNewFile
android·开发语言·python