【发布时间】:2021-01-13 23:32:27
【问题描述】:
Google 文档提出了以下模型 (https://cloud.google.com/apis/design/errors#error_model) 用于在 gRPC 中发送丰富的错误,但似乎每次都将错误字符串发送给用户。我要做的是发送一个代码,然后在它到达客户端时将其映射到一个字符串。
我想知道proto3 语言支持写入数据以便我在客户端使用它,而无需定义自定义结构来将错误代码映射到错误消息。
【问题讨论】:
-
每个错误都会发送错误字符串。是不是这么贵的东西,遇到错误就发不起?也许在担心它之前衡量它是否有影响。
-
@Marc 我将它用于带宽非常重要的应用程序。我可以毫无问题地通过连接发送字符串,但用户会通过智能手机连接,大部分时间都在没有任何 Wi-Fi 的位置。我还想将它不仅用于错误处理,还想用于其他功能。
-
我不认为这会是一个很大的开销,也使用它你可以轻松地更新服务器上的错误,而无需客户端更新
-
错误应该很少见。优化它们可能是浪费时间。如果它们并不罕见,您可能需要不同的应用程序设计。
-
你可能是对的。我仍然会使用这种模式来传输不变且经常遇到的数据。
标签: go error-handling grpc protoc