• Django—中间件(待更新)


    Django中间件

    中间件的功能

    用户访问频率限制
    用户是否是黑名单 白名单
    所有用户登录校验
    只要是涉及到网址全局的功能 你就应该考虑使用中间件

    中间件的使用

    django中间件暴露给程序员五个可以自定义的方法(五个方法都是在特定的条件下自动触发的)
        1.新建一个文件夹 里面新建一个任意名称的py文件里面写类 固定继承
        from django.utils.deprecation import MiddlewareMixin
        class MyMiddle(MiddlewareMixin):
        ...
        2.去配置文件注册到中间件配置中 你需要手写字符串的路径
        'app01.mymiddleware.myaabb.MyMiddle1'
    

    需要掌握的

    process_request(******):请求来的时候 会从上往下依次经过每一个中间件里面	process_request,一旦里面返回了HttpResponse对象那么就不再往后执行了 会执行同一级别的
    process_response:
    def process_request(self,request):
    print('我是第一个自定义中间件里面的process_request方法')
    return HttpResponse("我是第一个自定义中间件里面的HttpResponse对象返回值")  # 直接原地返回
    
    
    process_response(***):响应走的时候 会从下往上依次进过每一个中间件里面的process_response
    def process_response(self,request,response):  # response就是要返回给用户的数据
    print("我是第一个自定义中间件里面的process_response方法")
    return response
    
    

    了解的

    process_view:路由匹配成功之后执行视图函数之前触发
    process_exception:当视图函数出现异常(bug)的时候自动触发
    process_template_response:当视图函数执行完毕之后并且返回的对象中含有render方法的情况下才会触发
    
  • 相关阅读:
    数据库
    Python基础
    flask 文件的上传下载和excel操作
    Django 知识点补充
    Django部署时为什么要用 uWSGI与 Nginx? 以及 WSGI,uwsgi等协议
    Memcached 补充
    websocket基本概念
    Tornado 异步非阻塞
    Tornado 自定义session,与一致性哈希 ,基于redis 构建分布式 session框架
    functools 和 itertools
  • 原文地址:https://www.cnblogs.com/Sheppard/p/11773158.html
Copyright © 2020-2023  润新知