drf的五大模块
Posted oxtime
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了drf的五大模块相关的知识,希望对你有一定的参考价值。
1、请求模块:drf的request是对wsgi的request二次封装,且完全兼容,拓展query_params和data两个属性
request._request
request._request = request
request.query_params = request._request.GET
request.data(form-data,urlencoded,json)
2、渲染模块:可以全局和局部配置渲染方式
renderer_classes = []
DEFAULT_RENDERER_CLASSES: []
3、解析模块:可以全局和局部配置能解析的数据包
parser_classes = []
DEFAULT_PAARSER_CLASSES: []
4、异常模块:自定义异常模块,可以自定义异常返回以及提供记录异常的接口(这里接口的意思就是该需求后期可以在这里添加)
'EXCEPTION_HANDLER': 'api.utils.exception_handler',
from rest_framework.views import exception_handler as drf_exception_handler
def exception_handler(exc, context):
response = drf_exception_handler(exc, context)
if respose is None:
return Response(自己处理) # 服务器错误 500
return response # drf处理的,客户端错误 4xx
5、响应模块:知道response对象产生可以传那些信息,response对象又是如何访问这些信息的
Response(data={}, status=status.HTTP_200_OK, headers={})
以上是关于drf的五大模块的主要内容,如果未能解决你的问题,请参考以下文章