【问题标题】:How to use google.protobuf.struct in proto file to store json result in gRPC java如何在 proto 文件中使用 google.protobuf.struct 在 gRPC java 中存储 json 结果
【发布时间】:2020-08-13 18:33:41
【问题描述】:

我想在 gRPC 中从服务器向客户端返回 JSON 响应。

一种可能的方法是将其转换为字符串返回响应,然后在客户端转换回 Json 对象,但我想知道我们能做得更好吗?。

我正在做一些谷歌,发现我们可以在 google.protobuf.struct 的帮助下做到这一点 但实际上并没有找到任何好的例子。

我想要一个示例,如何在 java 中将其用作 JSON。

【问题讨论】:

  • JSON 是一个字符串。您最初的解决方案是如何获得 JSON 结果。 (如果你想更有效地做到这一点,那么使用 actual protobuf 而不是 JSON 可能会有所帮助。)

标签: java protocol-buffers grpc protobuf-java


【解决方案1】:

如果您使用的是 proto3,一种选择是定义一个 protobuf 消息,该消息反映您希望填充的 JSON 对象。然后你可以使用JsonFormat在protobuf和JSON之间进行转换。

使用com.google.protobuf.Struct 代替自定义消息也可以。 similar question中有一个例子。

【讨论】:

    猜你喜欢
    • 2019-05-12
    • 1970-01-01
    • 2018-06-19
    • 2020-03-05
    • 2018-01-07
    • 1970-01-01
    • 2017-02-10
    • 1970-01-01
    • 2017-03-16
    相关资源
    最近更新 更多