假设我有三个微服务A,B,C。
假设客户端调用
client--> A --> B --> C
客户端呼叫微服务A,然后呼叫B和B然后呼叫C
如果B或C中的任何一个返回5XX,则A将向用户显示502错误。
client --> A --> 5XX
or client --> A --> B--> 5XX
客户端收到详细消息中带有实际错误的502响应。
假设有一个错误的请求错误(例如B或C)或4XX错误,A应该向用户显示什么? 502 Bad Gateway或向用户传播4XX错误?
client --> A --> 4XX
or client --> A --> B--> 4XX
客户应该看到什么?
它应该是一个包含4xx错误的502 Bad Gateway,其中包含响应正文中的错误详细信息吗?
例如:
502 Bad Gateway
{
"errors" : {
"code" : "InternalError",
"message" : "Internal error occured please try after some time.",
"details" : "Error in validating file 123-23-234 format while unzipping."
}
}
或
应该是4XX错误,错误详情在响应正文中吗?
4XX Bad Request
{
"errors" : {
"code" : "InvalidFileFormat",
"message" : "Error in validating file 123-23-234 format while unzipping."
}
}
401 Auth错误或超时错误怎么办?