ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

flask:自定义异常

2026/8/6 8:31:40 拓冰建站 浏览量
flask:自定义异常

一,代码:

自定义异常:


class ApiError(Exception):""""API接口异常错误"""messsage = ""# 默认错误码status_code = 400# 自定义一个return_code, 作为更细粒的错误代码def __init__(self, message,  return_code=None, status_code=None, payload=None):Exception.__init__(self)self.message = messageself.return_code = return_codeif status_code is not None:self.status_code = status_codeself.payload = payload# 构造要返回的错误代码和错误信息的dictdef to_dict(self):rv = dict(self.payload or ())rv['return_code'] = self.return_coderv['message'] = self.messagereturn rv

调用:抛出异常 

@photo.route("/upload/", methods=['GET'])
def photo_upload():raise ApiError('上传页面发生自定义异常',8001,500)

处理自定义异常:

@app.errorhandler(ApiError)
def handle_api_error(error):"""处理Api自定义错误码"""rv = error.to_dict()status_code = error.status_codemsg = "自定义错误:"+ rv['message']return failed_response(error.return_code,msg), error.status_code

二,运行效果:

image