rest_framework-解析器

解析器

from rest_framework.views import APIView
from django.http import HttpResponse
from rest_framework.parsers import JSONParser, FormParser


class ParseView(APIView):
   parser_classes = [JSONParser, FormParser]
   
   def post(self, request):
       return HttpResponse(request.data)
  • request.data的触发机制
    • 获取用户请求
    • 获取用户请求体
    • 根据用户的请求头和parse_classes 中支持的请求头进行比较
    • 对应的parse对象去解析请求体
    • 返回给reqeust.data

常用的parse

  • JSONParser: 解析json
  • FormParser: 解析form表单
  • FileUploadParser: 上传文件
原文地址:https://www.cnblogs.com/ivy-blogs/p/11652379.html