Django-中间件

定义:

编写中间件:

注册中间件:
添加中间件:

1.在项目目录下添加一个文件夹(名字随意),然后文件夹下创建.py文件

2.将中间件添加到setting文件中

python 复制代码
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',
]

3..py文件下编写中间件

python 复制代码
from django.utils.deprecation import MiddlewareMixin
from django.http import HttpResponse


class MyMW(MiddlewareMixin):
    def process_request(self, request):
        print('请求之前')
        return None

    def process_view(self, request, view_func, view_args, view_kwargs):
        print('视图函数之前')
        return None

    def process_response(self, request, response):
        print('响应之后')
        return response

CSRF-跨站伪造请求攻击

CSRF防范:

防范步骤:

相关推荐
漫路在线10 分钟前
JS逆向-某易云音乐下载器
开发语言·javascript·爬虫·python
成功人chen某3 小时前
配置VScodePython环境Python was not found;
开发语言·python
2301_786964363 小时前
EXCEL Python 实现绘制柱状线型组合图和树状图(包含数据透视表)
python·microsoft·excel
skd89994 小时前
小蜗牛拨号助手用户使用手册
python
「QT(C++)开发工程师」4 小时前
STM32 | FreeRTOS 递归信号量
python·stm32·嵌入式硬件
运维成长记4 小时前
mysql数据库-中间件MyCat
数据库·mysql·中间件
史迪仔01124 小时前
[python] Python单例模式:__new__与线程安全解析
开发语言·python·单例模式
低代码布道师4 小时前
第五部分:第五节 - Express 路由与中间件进阶:厨房的分工与异常处理
中间件·express
胡耀超4 小时前
18.自动化生成知识图谱的多维度质量评估方法论
人工智能·python·自动化·知识图谱·数据科学·逻辑学·质量评估
三块钱07944 小时前
【原创】基于视觉大模型gemma-3-4b实现短视频自动识别内容并生成解说文案
开发语言·python·音视频