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

    视图函数

    中间件类

    class JsonMiddleware(MiddlewareMixin):
        def process_response(self, request, response):
            if isinstance(response, HttpResponse):
                return response
    
            if isinstance(response, dict):
                return HttpResponse(
                    json.dumps(response, ensure_ascii=True, cls=DateEncoder),
                    content_type="application/json",
                )
    
            return HttpResponse(response)

     

    setting配置:

    process_request 方法

    process_request 方法有一个参数 request,这个 request 和视图函数中的 request 是一样的。

    process_request 方法的返回值可以是 None 也可以是 HttpResponse 对象。

    • 返回值是 None 的话,按正常流程继续走,交给下一个中间件处理。
    • 返回值是 HttpResponse 对象,Django 将不执行后续视图函数之前执行的方法以及视图函数,直接以该中间件为起点,倒序执行中间件,且执行的是视图函数之后执行的方法。

    process_response

    process_response 方法有两个参数,一个是 request,一个是 response,request 是请求对象,response 是视图函数返回的 HttpResponse 对象,该方法必须要有返回值,且必须是response。

    process_response 方法是在视图函数之后执行的。

    isinstance函数

  • 相关阅读:
    最后完整的excel.java文件
    *将制定类型的List写入Excel中
    初始化Excel表格
    单元格的格式设置 字体大小 颜色 对齐方式、背景颜色等
    生成写入excel
    activity_daochu.xml代码
    设计了activity_daochu.xml
    个人作业第二阶段
    阅读笔记一-1软件=程序+软件工程
    每日总结
  • 原文地址:https://www.cnblogs.com/yu121/p/14466008.html
Copyright © 2011-2022 走看看