Python笔记之Django自定义中间件MIDDLEWARE

一、目标

学习Django 的中间件,自定义一个中间件,让请求URL后就开始执行中间件(还没到视图的时候就已执行了)

还有好多中间件要学习,比如在视图执行后执行中间件等等,方法类似。

二、试验平台

windows7 , python3.7,Django2.1.5

三、概述

1.新建Djagon项目、新建app名叫blog

2.在项目根目录创建一个文件夹用于存放中间件程序/xMiddleware

3.再在中间件文件夹xMiddleware下创建用app命名的文件夹/xMiddleware/blog

4.创建自定义中间件py文件,写上程序。

5.在/settings中注册自定义中间件

6.测试效果

四、主要代码:

1.自定义中间件代码/xmiddleware/blog/kahnMiddle.py

# # /xMiddleware/blog/kahnMiddle.py  自定义中间件
#!/usr/bin/env python
# -*- coding:utf-8 -*-
from django.utils.deprecation import MiddlewareMixin


class xMiddleWare(MiddlewareMixin):
    def process_request(self, request):
        xArgs = request.GET.get("xName")
        print(f"自定义中间件被调用了,参数为:{xArgs}")

2./settings.py注册写好的自己定义的中间件

'xMiddleware.blog.kahnMiddle.xMiddleWare',

Python笔记之Django自定义中间件MIDDLEWARE_第1张图片

五、运行django以测试效果。

1.在浏览器中按照自定义中间件定义的接受参数的方式去写个GET形式的URL

http://127.0.0.1:8000/?xName=Kahn  效果如下:

Python笔记之Django自定义中间件MIDDLEWARE_第2张图片

在控制台上能看的出来,没有视图的时候,我们自定义的中间件也生效了。这个非常碉。

Python笔记之Django自定义中间件MIDDLEWARE_第3张图片

六、文件结构截图

Python笔记之Django自定义中间件MIDDLEWARE_第4张图片

kahn 测试ok 2019年4月20日16:39:14

你可能感兴趣的:(python)