假设我有一个具有如下结构的 .proto:
syntax = "proto3";
message Foo {
...
}
message Bar {
...
}
message Msg {
string baz = 1;
oneof some_union {
Foo foo = 2;
Bar bar = 3;
}
}
序列化此类消息的预期方式是什么? JSON Mapping规范部分不是很清楚。
我至少可以看到两种表示它的方法,哪一种是正确的?
第一种方法:在“顶层”有一个元素,忽略其他元素:
{
"baz" : 0,
"foo" : { ... }
}
第二种方式:有一个带有联合名称的“unmbrella”属性,并为其指定一个字段。
{
"baz" : 0,
"some_union": {
"foo" : { .... }
}
}
我应该期待什么?
最佳答案
我编写了一些测试代码,它表明第一个是正确的。
关于json - 'oneof' protobuf 字段的预期 JSON 序列化是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44069789/