依赖API宕机或返回AUTH错误时,RESTful API应返回何种HTTP错误码?
依赖API异常时的HTTP错误返回建议
一、依赖API宕机的情况
当你的RESTful API依赖的内部/外部服务出现宕机、无响应或超时情况时,应返回 503 Service Unavailable 错误码:
- 该状态码清晰传递了「服务暂时无法处理请求,属于临时故障」的信号,明确问题不在客户端侧。
- 可以在响应体中补充简洁说明,比如
{"error": "依赖服务暂时不可用,请稍后重试"},但不要暴露内部依赖的具体信息,避免不必要的信息泄露。
二、依赖API返回AUTH错误的情况
这种场景和宕机的返回逻辑不相同,建议返回 500 Internal Server Error,若你的API承担网关/代理角色,也可使用 502 Bad Gateway:
- 500:代表服务端内部处理出错,此处是因调用依赖API时遇到权限问题,属于自身配置或权限故障,与客户端无关。
- 502:若你的API本质是转发依赖API请求的网关,该状态码更贴合场景,表明网关从上游服务器收到了无效响应(含权限错误)。
- 注意:不要直接将依赖API返回的401/403等AUTH类错误码返回给客户端,这会误导客户端认为是自身权限存在问题。
内容的提问来源于stack exchange,提问作者user419022
相关产品推荐
相关产品推荐

