我已经开发了一组 RESTful Web 服务,我正在尝试以一种有用的方式为用户处理错误。
我遇到了错误编码帐户资源的 URL 并收到 404 错误的情况。我预计会出现错误,因为服务器中没有 @Path 注释会响应。但是由于我得到了404,我向用户报告说找不到他们的帐号。
我猜从纯 RESTful 的角度来看,404 “有意义”,因为 /server/foo/123450 没有“资源”(当资源的正确路径是 /server/bar/123450 时)。但是 /server/thisPathHasNoHopeOfExisting/123450 也响应 404。
/server/bar/000000 其中帐号 00000 不存在响应 404。
我怎样才能告诉我的用户正确的事情?(那 /server/thisPathHasNoHopeOfExisting/xxxxxx 是一个真正的服务器错误,一个 500 系列,因为服务器永远不会回答这个问题)——有没有办法让我的 Jersey 服务少一点 REST-pedantic?