首页IT科技error parsing conf hdfs-site(后台response和异常处理封装)

error parsing conf hdfs-site(后台response和异常处理封装)

时间2025-05-05 01:12:36分类IT科技浏览3818
导读:我们自己封装的一些东西,往往放在一个utils文件夹内,以后也方便管理和导入...

我们自己封装的一些东西           ,往往放在一个utils文件夹内,以后也方便管理和导入

后台response封装

# 自己封装的Response对象 from rest_framework.response import Response class APIResponse(Response): def __init__(self,code=1,msg=成功,result=None,status=None,headers=None,content_type=None,**kwargs): dic = { code:code, msg:msg } if result: dic[result]=result dic.update(kwargs) super().__init__(data=dic,status=status,headers=headers,content_type=content_type)

自己封装的异常处理

# 这里用来放全局异常 # 这个方法可以从rest_framework里的settings.py里找到它的配置                  ,然后导入就行     ,重写该方法 from rest_framework.views import exception_handler from . import response # 导入自己定义的响应对象 from .logger import log #导入自己定义的日志对象 def common_exception_handler(exc, context): # 记录以下报错信息到日志中 # context[view]可以取到具体是哪个视图出了错 log.error(view是:%s        ,错误是:%s %(context[view].__class__.__name__,str(exc))) # 先调用一下原来的exception_handler方法 ret = exception_handler(exc, context) # ret是一个Response对象                  ,其内部有一个data属性        ,放的就是错误信息 # 这个表示如果drf处理不了的异常(交给django处理的异常)     ,我们进行处理一下 if not ret: # 这里面也可以放更多其他逻辑                  ,具体对于会出现的异常进行分类处理 # 比如下面这样 # if isinstance(exc,KeyError): return response.APIResponse(code=0,msg=error,result=str(exc)) else: # ret.data是一个字典           ,字典里是drf处理的异常信息 return response.APIResponse(code=0,msg=error,result=ret.data)

封装完毕之后  ,还需要在settings里配置一下                 ,告诉drf采用我们封装的异常处理

# 放自己的全局异常 REST_FRAMEWORK = { EXCEPTION_HANDLER: luffyapi.utils.exceptions.common_exception_handler, }

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
w10过期后如何输入激活码(Win10过期了如何激活?Win10过期了重新激活教程) windows10 窗口(Wn10窗口消失(跑到屏幕外边)如何解决?)