[英]Implementing API exception flask-restful
我正在尝试捕获当提供的URL是一个混乱且错误的URL时引发的异常,然后将错误响应作为JSON返回。 这就是我为实现此逻辑所做的事情。
当key_id
不是S3的有效键时,在Analysis类内引发异常。
def url_error(status_code, message, reason):
response = jsonify({
'status': status_code,
'message': message,
'reason': reason
})
response.status_code = status_code
return response
class RowColumnCount(Resource):
def get(self, key_id):
try:
rc = Analysis(key_id=key_id)
except S3ResponseError as e:
return url_error(e.status, e.message, e.reason)
json_response = json.loads(rc.count_rows_columns())
return json_response
上面的代码可以正常工作,但是对于50种不同的Resource类来说,它有点重复。 每个Resource类都应处理此特定错误。 如何使其成为装饰器,以减少代码重复性。
我正在使用Flask,Flask-Restful,Python 3.4.3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.