我编写了一个自定义异常处理类来验证输入请求数据,并在验证失败时提出该请求。这是一个Flask应用程序。这似乎一直有效,直到时间服务器未调度响应为止,因为我可以看到异常对象具有自定义错误,但随后将其转换为通用500错误消息。我是否想念这里做错了什么?
class CustException(Exception):
pass
class APIException(CustException):
def __init__(self, status=None, title=None, type=None, detail=None, **kwargs):
super(AIVException, self).__init__(detail)
self.status = status
self.detail = detail
self.title = title
self.type = type
if x not in [1, 2]:
raise APIException(status=400, title='Bad request', type=default_type, detail="pass the correct value")
**
注意-我希望通过引发异常而不是使用异常来做到这一点 错误处理程序。因此,请不要将其标记为重复。
**
答案 0 :(得分:0)
如果您想使用APIException返回自定义消息或其他内容,则可以使用errorhandler装饰器
@app.errorhandler(APIException)
def api_exception(ex):
return 'Your custom message', your_code