zoukankan      html  css  js  c++  java
  • django之中间件

    1.什么是中间件:
    官方的说法:中间件是一个用来处理Django的请求和响应的框架级别的钩子。它是一个轻量、低级别的插件系统,用于在全局范围内改变Django的输入和输出。每个中间件组件都负责做一些特定的功能
    2.自定义中间件
      在app中建一个文件mymiddleware

    from
    django.utils.deprecation import MiddlewareMixin from django.shortcuts import render, HttpResponse class MyMiddleware(MiddlewareMixin): def process_request(self, request): print('mymiddle_1-------------process_request') def process_response(self, request, response): print('mymiddle_1-------------process_response') return response
    3.process_request
    process_request有一个参数,就是request,这个request和视图函数中的request是一样的。
    
    它的返回值可以是None也可以是HttpResponse对象。返回值是None的话,按正常流程继续走,交给下一个中间件处理,如果是HttpResponse对象,Django将不执行视图函数,而将相应对象返回给浏览器。
    4.process_response
    它有两个参数,一个是request,一个是response,request就是上述例子中一样的对象,response是视图函数返回的HttpResponse对象。该方法的返回值也必须是HttpResponse对象。
  • 相关阅读:
    crash reporting system for Windows applications
    1
    qt 试用 (3)配置编译源代码及调试
    kd tree & ray tracing
    new
    KMP算法中关于next数组的探究
    teamviewer vs echovnc
    NAT之stun确定nat类型
    Wireshark
    GNU httptunnel,当SSH被block时的选择
  • 原文地址:https://www.cnblogs.com/zhaijihai/p/10008023.html
Copyright © 2011-2022 走看看