Parsers

如果请求体没有设置content type默认视为form,可以通过DEFAULT_PARSER_CLASSES设置。

可以针对每个view设置其parser_classes。

JSONParser application/json

FormParser application/x-www-form-urlencoded

MultiPartParser multipart/form-data

FileUploadParser /
如果请求的url中包含了filename关键字则会视为文件名,否则需要在Content-Disposition头部中指定:

Content-Disposition: attachment; filename=upload.jpg

由于FileUploadParser接收的media_type可为任意类型,所以对应的view最好仅指定该parser
如果是webbased的文件上传 最好使用MultiPartParser

CustomParsers

djangorestframework-yaml --> YAMLParser
djangorestframework-xml --> XMLParser
djangorestframework-msgpack --> msgpack
djangorestframework-camel-case-json --> camel-case-json

你可能感兴趣的:(Parsers)