我使用Zuul和Eureka作为反向代理。当下游服务返回4xx客户端异常时,Ribbon将将异常转换为500服务器错误。
白色标记页上的一个示例输出是:
There was an unexpected error (type=Internal Server Error, status=500).
403 FORBIDDEN
RibbonRoutingFilter似乎总是将任何异常转换为500。
是否有任何方法覆盖此行为并将原始状态代码发送给客户端。
服务器错误导致HTTP 500-使用一般错误消息(“服务器遇到错误...”)响应客户端。有没有办法截取此消息并编写自定义消息?
我希望有一种方法可以唯一地从客户端识别服务器错误。例如,如果我可以生成一个GUID,在发生服务器错误时在服务器端记录该GUID,然后将该ID发送到客户端,这将使以后随时在日志中搜索该特定异常变得容易。
我确实意识到服务器错误是由代码中的异常生成的,所以我正在寻找应用引擎API中的某种捕获所有异常钩子。当然,如果这样的钩子存在,并且在这里执行的代码生成第二个异常,那么它将不得不再次默认为一般的500-error。
我正在使用Java API for GAE