zoukankan      html  css  js  c++  java
  • Django--中间件

    首先看一下django的生命周期图

    中间件处在wsgiref和路由系统之间,也就是说所有从浏览器发送到服务器的请求都必须经过中间件。

    而中间件的作用又是什么呢?

    中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出。因为改变的是全局,所以需要谨慎实用,用不好会影响到性能

    而中间件到底是什么呢?

    中间件其实就是一个类,这个类中一共有5个方法,分别是

    process_request:请求来的时候从上往下依次执行每一个中间件里面的process_request
    process_response :响应走的时候会从下往上依次执行每一个中间件里面的process_response方法

    process_view:路由匹配成功执行视图之前自动触发(从上往下依次执行)
    process_exception:当视图函数报错了,自动触发(从下往上依次执行)
    process_template_response:视图函数返回的对象有一个render()方法
    (或者表明该对象是一个TemplateResponse对象或等价方法)(从下往上依次执行)

    中间件的执行流程

    我们特可以自己写一个中间件来验证一下

    首先在项目根目录创建一个py文件

     创建完成后到settings文件中注册中间件

     

    得到结果

  • 相关阅读:
    Ceph相关
    Redis学习
    docker mysql
    WebSocket学习与使用
    nginx学习与使用
    python学习小记
    基数计数——HyperLogLog
    Swagger使用小记
    理解Java枚举类型
    Jenkins使用
  • 原文地址:https://www.cnblogs.com/duGD/p/11218551.html
Copyright © 2011-2022 走看看