DRF解析器源码分析

DRF解析器源码分析

1 解析器

解析请求者发来的数据(JSON)

使用 request.data 获取请求体中的数据。

这个 reqeust.data 的数据怎么来的呢?其实在drf内部是由解析器,根据请求者传入的数据格式 + 请求头来进行处理。

drf默认的解析器三个JSONParser, FormParser, MultiPartParser

1.1 JSONParser (*)

只支持JSON格式的数据

在这里插入图片描述

1.2 FormParser

在这里插入图片描述

1.3 MultiPartParser(*)

既支持发送数据,又支持传输文件

在这里插入图片描述

解析器可以设置多个,默认解析器:

from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework.parsers import MultiPartParser, JSONParser, FormParser

class UserView(APIView):
    parser_classes = [MultiPartParser, JSONParser, FormParser]
    def post(self, request):
        print(request.content_type)
        print(request.data)
        return Response("...")

1.5 源码分析

在这里插入图片描述

相关推荐

  1. SpringMVC分析(八)--参数解析

    2024-05-03 08:38:03       19 阅读
  2. SpringMVC分析(六)--参数名称解析

    2024-05-03 08:38:03       18 阅读
  3. SpringMVC分析(九)--返回值解析

    2024-05-03 08:38:03       15 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-03 08:38:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-03 08:38:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-03 08:38:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-03 08:38:03       18 阅读

热门阅读

  1. Vue 3 Hooks: 深入理解 Composition API 的魅力

    2024-05-03 08:38:03       10 阅读
  2. selenium自动化,Chrome 启动参数

    2024-05-03 08:38:03       11 阅读
  3. docker 获取离线镜像包

    2024-05-03 08:38:03       11 阅读
  4. 深信服超融合部署Ubuntu22.04 LTS

    2024-05-03 08:38:03       13 阅读
  5. WPF之DataGrid表格,自定义表头、自定义单元格

    2024-05-03 08:38:03       11 阅读
  6. WPF —— 跑马灯

    2024-05-03 08:38:03       9 阅读
  7. C语言双向链表快速入门教程

    2024-05-03 08:38:03       13 阅读
  8. 【Godot4.2】EasyTreeData通用解析

    2024-05-03 08:38:03       7 阅读
  9. 数组作为参数和返回值

    2024-05-03 08:38:03       7 阅读