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对象。
  • 相关阅读:
    thinkphp 模板文件
    thinkphp 目录安全文件
    thinkphp 防止sql注入
    thinkphp 表单令牌
    thinkphp 表单合法性检测
    thinkphp 输入过滤
    thinkphp 静态缓存
    thinkphp sql解析缓存
    thinkphp 查询缓存
    thinkphp 快速缓存
  • 原文地址:https://www.cnblogs.com/zhaijihai/p/10008023.html
Copyright © 2011-2022 走看看