App Engine管理在云端点上作为错误JSON返回的内容。当我抛出Google提供的ServiceException
时,我会将其statusCode
和statusMessage
传递给我:
public ServiceException(int statusCode, String statusMessage) {
super(statusMessage);
this.statusCode = statusCode;
this.reason = null;
this.domain = null;
}
然后,App Engine会在错误响应中将此JSON返回给调用者:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "The statusMessage I gave it."
}
],
"code": 401,
"message": "The statusMessage I gave it."
}
}
我想用额外的字段扩展响应,例如一个应用程序错误代码告诉客户端出了什么问题(消息应该是人类可读的)。
我没有深入研究Java servlet和内部工作,但我试图捕获响应并对其进行修改,这对200响应起作用,但对于错误响应却没有。有什么想法吗?
答案 0 :(得分:0)
根据您的要求,我建议您查看ServiceException类如何在Java endpoints-framework上运行。
在这里,您可以检查异常的处理方式,并在此基础上,扩展返回的错误JSON以满足您的需求,也就是说,任何人都可以理解为什么他的运行失败。