gpt4 book ai didi

go - Go中的高性能gRPC丰富错误处理

转载 作者:行者123 更新时间:2023-12-03 08:09:01 25 4
gpt4 key购买 nike

Google文档提出了以下模型(https://cloud.google.com/apis/design/errors#error_model),用于在gRPC中发送大量错误,但似乎错误字符串每次都会发送给用户。我要做的是发送代码,然后在到达客户端时将其映射到字符串。
我想知道proto3语言支持编写数据的方式,以便我可以在客户端使用它,而无需定义自定义结构即可将错误代码映射到错误消息。

最佳答案

proto定义中,定义带有任何其他错误代码的简单enum:

enum extraStatusCode {
UNKNOWN = 0; // not set/used
TOO_MANY_FOOS = 1;
NOT_ENOUGH_BARS = 2;
}
并将其作为顶级字段包含在任何返回的 message中:
message User {
string uid = 1;
string email = 2;

// ...

extraStatusCode = 15;
}
如果使用非零 extraStatusCode发送消息-则遇到边缘情况。

关于go - Go中的高性能gRPC丰富错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64101243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com