request.body获得与请求体相关的数据
request.POST里面要想有值,需把数据转换为QueryDict对象
默认一般情况下:form表单提交,Ajax提交是满足上面两个要求的
from django.core.handlers.wsgi import WSGIRequest 找到def.get 和def.FILES方法
POST = property(_get_post, _set_post) 点击_get_post
content_type == “multipart/form-data” 是上传文件时指定的type类型
上面第二行的JSONParser应该为FormParser
最常用的是JSONParser
print(request.data)表示去请求体里面去拿值,JSONParser起到了作用。
rest framework解析器:对请求体数据进行解析
把请求体的内容转换为想要看的格式
request.data中的request是 from rest_framework.request import Request 的 Request对象
根据用户的请求头,确定使用哪个解析器
self.get_parsers()是获取所有的解析器对象 [parser() for parser in self.parser_classes] 列表生成式
对request进行封装时
把所有的解析器实例化为对象封装到request中。
在执行print(request.data)之前,request里面已经有所有的解析器对象了。
解析器一般配置到全局的配置文件中settings.py中