目录
Django DRF 解析器
1. 解析器作用
request请求先进到APIView的dispatch方法, 如果有异常走到exception。
Json请求
www-form 请求
form-data请求
可以看到不同类型的请求, request.data 拿到的对象不同, Json格式拿到的是字典, www-form和form-data拿到的是queryset。
2. 使用
解析器默认配置
可以看到drf默认配置了三个解析器
为视图类定义解析器
在视图类中可以只定义单个解析器
class Home(APIView):
from rest_framework.parsers import JSONParser
parser_classes = [JSONParser]
def get(self, request, *args, **kwargs):
print(request.content_type)
print(request.data)
return Response({'status': "OK"})
修改全局配置
在settings.py中添加
REST_FRAMEWORK = {
'EXCEPTION_HANDLER': 'app01.utils.handlers.exception_handler',
'DEFAULT_PARSER_CLASSES': [
'rest_framework.parsers.JSONParser'
]
}
标签:解析器,form,request,视图,data,DRF
From: https://www.cnblogs.com/khalil12138/p/18303754