从Flask restplus命名空间类截获验证错误

从Flask restplus命名空间类截获验证错误,flask,exception-handling,flask-restful,flask-restplus,Flask,Exception Handling,Flask Restful,Flask Restplus,当前,名称空间解析器验证请求参数并抛出错误,如 { "errors": { "file": "Missing required parameter in an uploaded file" }, "message": "Input payload validation failed" } 从flask应用程序中,我想截获或处理这些异常,并发送一个定制的响应,以确保一致性,如 { “错误”:{ “文件”:“上载的文件中缺少必需的参数” }, “消息”:“输

当前,名称空间解析器验证请求参数并抛出错误,如

{
    "errors": {
        "file": "Missing required parameter in an uploaded file"
    },
    "message": "Input payload validation failed"
}
从flask应用程序中,我想截获或处理这些异常,并发送一个定制的响应,以确保一致性,如 { “错误”:{ “文件”:“上载的文件中缺少必需的参数” }, “消息”:“输入有效负载验证失败”, “id”:“某个客户id” }

是否可以从应用程序级别处理此异常,而不是对每个api执行此操作?根据此问题,有一种解决方法可以生成个性化消息

也就是说,可以通过BadRequest错误处理程序的定义来实现这一点,并修改数据属性:

@api.errorhandler(BadRequest)
def bad_request(self):
    self.data.update({'id': 'some customer id'})

    return {}, 400
但是,没有干净的方法可以避免返回空字典,因为它被丢弃了