我正在使用 grpc-gateway,我想公开一个带有以下 json 响应的 api:
{
"id": "123",
"name": "MyItem",
"properties": {
"propA": 1,
"propB": "some value",
"propC": true,
}
}
“属性”中的值是动态的,并且无法提前知道。
到目前为止,我的原型定义是:
message Item {
message PropertyValue {
string string_value = 1;
int32 number_value = 2;
bool bool_value = 3;
}
string id = 1;
string name = 2;
map<string, PropertyValue> properties = 3;
}
但这会产生如下响应:
{
"id": "123",
"name": "MyItem",
"properties": {
"propA": {
"number_value": 1
},
"propB": {
"string_value": "some value"
},
"propC": {
"bool_value": true
}
}
}
如何修改我的原型,以便在没有额外输入信息的情况下将属性作为 json 映射返回?