【问题标题】:How to represent a JSON object variable with Proto definition如何用 Proto 定义表示 JSON 对象变量
【发布时间】:2020-04-21 00:20:25
【问题描述】:

我想在 gRPC 中定义一个请求消息,它应该有一个 Json 对象作为字段 例如

message UserRequest{
    string name = 1;
    string city = 2;
    string email = 3;
    metainfo = 4;//A Json Object variable which can have any number of elements
}

如何在 proto 定义中表示元信息属性? 我试过使用下面的定义,但没有用。

message UserRequest{
    string name = 1;
    string city = 2;
    string email = 3;
    google.protobuf.Any metainfo = 4;
}

【问题讨论】:

    标签: java protocol-buffers grpc grpc-java proto


    【解决方案1】:

    我认为您想要一个.google.protobuf.Struct,通过struct.proto - 这基本上封装了一个map<string, Value> fields,并且大致类似于您希望通过JSON 描述的内容。此外,Struct 具有自定义 JSON 处理,如文件中所述:

    Struct 的 JSON 表示是 JSON 对象。

    所以:

        .google.protobuf.Struct metainfo = 4;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-30
      • 1970-01-01
      • 2018-08-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多