DRF解析器源码分析

DRF解析器源码分析

1 解析器

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

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

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

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

1.1 JSONParser (*)

只支持JSON格式的数据

1.2 FormParser

1.3 MultiPartParser(*)

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

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

python 复制代码
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 源码分析

相关推荐
图亚Vanta12 小时前
Python入门第一课:Python安装、VSCode/Pycharm配置
vscode·python·pycharm
睿思达DBA_WGX13 小时前
使用 python-docx 库操作 word 文档(2):在word文档中插入各种内容
python·word
kunge1v513 小时前
学习爬虫第五天:自动化爬虫
爬虫·python·自动化
m***记14 小时前
Python 自动化办公的 10 大脚本
windows·python·自动化
人间乄惊鸿客14 小时前
python - 第二天
python
江上月51314 小时前
django与vue3的对接流程详解(上)
后端·python·django
老歌老听老掉牙14 小时前
基于 PyQt5 实现刀具类型选择界面的设计与交互逻辑
python·qt·交互
秦禹辰14 小时前
轻量级开源文件共享系统PicoShare本地部署并实现公网环境文件共享
开发语言·后端·golang
可触的未来,发芽的智生14 小时前
触摸未来2025.10.09:记忆的突围,从64个神经元到人工海马体神经网络
人工智能·python·神经网络·机器学习·架构
Emrys_14 小时前
Redis 为什么这么快?一次彻底搞懂背-后的秘密 🚀
后端·面试