美文网首页
drf 自定义异常处理

drf 自定义异常处理

作者: 晨颜 | 来源:发表于2023-05-25 23:20 被阅读0次
    expection.py
    from rest_framework.response import Response
    from rest_framework.views import exception_handler
    
    def common_exception_handler(exc,context):
        # 只要走到这里,一定出异常了,我们正常的项目要记录日志(后面讲)
    
        # 两种可能:一个是Response对象,一个是None
        res=exception_handler(exc, context)
        if res:
            # 说明是drf的异常,它处理了
            if isinstance(res.data,dict):detail=res.data.get('detail')
            else:detail=res.data
            return Response({'code':998,'自己写的异常,msg':detail})
        # 说明是其它异常,它没有处理
        return ({'code':998,'自己写的异常,msg':str(exc)})
        # return ({'code':998,'自己写的异常,msg':'系统异常'})
    

    需要在配置文件中配置

    相关文章

      网友评论

          本文标题:drf 自定义异常处理

          本文链接:https://www.haomeiwen.com/subject/fdqkedtx.html