我们的 API 中有一条路由(当调用时)会命中另一个第 3 方 API。
e.g.
HTTP-GET /account/1
这会从我们的数据库和 .. 比如说 .. 第三方 api(例如 Auth0/Okta/SalesForce/whatever)返回一些数据。
现在,如果这个第 3 方 api 调用因任何原因失败(失败 == 4**、5** 甚至 200 OK,但内容是一些错误消息),那么我应该将什么错误状态代码传递回客户端调用my API?
最初我在想HTTP-500-Server-Error
但是...我现在不太确定因为我can如果我向客户端返回一条不错的错误消息,则可以防止服务器中发生此错误。所以我想,返回一个HTTP-200-OK
其中包含下游问题/错误的一些键/值......但这就是really好的(双关语)。大部头书,HTTP-200-OK
就像返回的答案是really ok.
所以我不确定人们在这种情况下会做什么。
我觉得自己像一个HTTP-500
适用于发生但尚未真正处理和/或解释的错误。
现在,如果这个第 3 方 api 调用因任何原因失败(失败 == 4**、5** 甚至 200 OK,但内容是一些错误消息),那么我应该将什么错误状态代码传递回客户端调用my API?
API 应该从消费者的角度进行设计。在大多数情况下,API 使用者不会关心请求是由他们向其发出请求的服务器还是由下游服务器来满足。
如果请求到下游服务器阻止您的服务器满足客户端请求,你可以去500 or 503。或者,您可以返回一些缓存数据(如果有的话)并返回2xx状态码。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)