我的web应用程序向可扩展服务代理 (ESP)发出HTTP请求,可扩展服务代理反过来将gRPC服务器委托给gRPC服务器(用Python编写)。忽略了Android和iOS客户端,其架构如下:

电除尘器是一个nginx反向代理。
gRPC服务器(参考体系结构中的“您的代码”)可能会引发异常,在这种情况下,我使用context.abort引发异常并以非OK状态终止RPC:
try:
# Do something that could fail.
except ValueError as e:
context.abort(grpc.StatusCode.DATA_LOSS, str(e))虽然可以使用代码和详细信息,但它们仍然导致HTTP状态为200 OK。
有两个问题:
500 Internal Server Error。500 Internal Server Error,用于gRPC服务器引发的所有异常。最终,我不明白如何将更多的信息(理想情况下,自定义)错误返回给web客户端。
https://stackoverflow.com/questions/53903708
复制相似问题