drf 响应格式和请求格式配置

1.配置响应格式

  • 配置文件中配置(全局配置)
REST_FRAMEWORK = {
    'DEFAULT_RENDERER_CLASSES': (  # 默认响应渲染类
        'rest_framework.renderers.JSONRenderer',  # json渲染器
        'rest_framework.renderers.BrowsableAPIRenderer',  # 浏览API渲染器
    )
}
  • 局部配置:局部配置某个视图类的响应格式,在视图类中配置
from rest_framework.renderers import JSONRenderer,BrowsableAPIRenderer

class BookView(APIView):
    ...
    renderer_classes = [JSONRenderer,BrowsableAPIRenderer]
  • 补充说明
1. 在浏览器访问就是浏览器方式,用postman访问就是json格式,ajax请求就是json格式
2. 没有配置,为什么显示浏览器方式和json的样子,因为drf也有一套默认配置文件,默认就配了两个响应类

2.配置能够解析的格式(urlencoded,formdata,json)

  • 配置文件中配置(全局配置)
REST_FRAMEWORK = {
    'DEFAULT_PARSER_CLASSES': [
        'rest_framework.parsers.JSONParser',
        'rest_framework.parsers.FormParser',
        'rest_framework.parsers.MultiPartParser'
    ]
}
  • 局部配置:在视图类中进行配置
from rest_framework.parsers import JSONParser,FormParser,MultiPartParser

class BookView(APIView):
    ...
    parser_classes = [FormParser]
  • 补充说明
1. 只能解析三种请求编码格式(urlencoded,formdata,json)
posted @ 2022-03-30 09:53  recordlife  阅读(90)  评论(0编辑  收藏  举报