首页 > 其他分享 >13 drf-解析器

13 drf-解析器

时间:2023-02-16 22:59:18浏览次数:36  
标签:解析器 13 JSONParser FormParser data drf

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

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

 

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

可以在全局配置文件settings.py中修改DRF全局参数,以REST_FRAMEWORK作为名称

1.JSONParser

 

 

 

2.FormParser

 

 

 

3.MultiPartParser

 

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="http://127.0.0.1:8000/test/" method="post" enctype="multipart/form-data">
    <input type="text" name="user" />
    <input type="file" name="img">

    <input type="submit" value="提交">

</form>
</body>
</html>
复制代码

 

4.FileUploadParser

 

 

标签:解析器,13,JSONParser,FormParser,data,drf
From: https://www.cnblogs.com/MRPython/p/17128590.html

相关文章

  • 3.drf使用配置&请求封装
    1.drf使用配置1.1安装pipinstalldjangorestframework==3.12.4版本要求djangorestframework==3.12.4python(3.5-3.9)Django(2.2,3.0,3.1)djangor......
  • 5.drf-认证
    在开发后端API的时候,不同的功能可能有不同的限制,如无需验证:API可以直接访问需要验证:API只有用户通过验证才可以访问这个时候我们就可以使用DRF提供的认证组件,下......
  • 4.drf-版本管理
    根据RESTful规范,后端API中需要体现出版本,DRF中支持5种版本的设置,常见的三种如下1.URL的GET中传递参数在视图类中定义fromrest_framework.versioningimportQuery......
  • 8.drf-序列化器
    在序列化类中,如果想使用request,则可以通过self.context['request']获取序列化器的主要由两大功能-对请求的数据进行校验(底层调用的是Django的Form和ModelForm)-对数......
  • 7.drf-限流
    限流就是限制用户的访问频率,如每分钟的操作的次数不超过3次等对于匿名用户,使用用户IP作为唯一标识对于登录用户,则使用用户的ID作为唯一标识1.限流的机制DRF中......
  • 6.drf-权限
    认证:判断用户是否登陆,从而获取用户的信息权限:判断当前用户是否有权限访问API接口,例如:普通用户,管理员,超级管理员权限可能是不同的下面通过案例进行介绍模型类fromdj......
  • python接口自动化13-API流量回放/锲约测试/自动化测试
    PPL-Tester简介http工具集,通过代理获取到API的请求与响应信息,将这些请求信息进行流量回放/锲约测试或快速生成用例,亦可通过人工进行修改参数化提取、变量引用、断言......
  • drf回顾,前端发展历史,vue介绍,第一个helloword,插值语法
    目录drf回顾,前端发展历史,vue介绍,第一个helloword,插值语法今日内容概要今日内容详细1drf回顾2前端发展历史3vue介绍4第一个helloworld5插值语法drf回顾,前端发展历史,vu......
  • CF653B 1300
    题意长度为n的字符串(字符串中只有abcdef共6种字母),有q种压缩方式,可以将字符串的前两个字符压成1个字符,求凭借这q种压缩方式,有几种长度为n的字符串最终能被压缩成字符'a'.......
  • MacOS Ventura13安装libimobiledevice踩坑记
    背景:Mac环境搭建iOS自动化环境,Mac系统:MacOSVentura13.2(手残党更新了一把)。问题一:brewinstalllibimobiledevice--HEAD报错提示:UpdatingHomebrew...Warning:Y......