我们有一个微服务架构,我们正在讨论如何向客户端公开内部错误.
这是一个例子:
假设我们有3个服务,服务A,B和C.当客户端向服务A发送请求时,该服务是公共的,该服务向服务B发送请求,向服务C发送请求(内部和需要)身份验证,但凭据在内部存储,如环境变量,它们不是由客户端发送的).
并且由于某种原因,B和C之间的通信接收401(可能是422,403或任何与客户端相关的错误),这意味着该请求未被授权.
B和C之间的通信是内部的,用户不了解这些服务.我应该公开我们的内部结构向客户端发送401吗?鉴于这不是客户的错?我应该送500吗?