在我的原型文件中将google.protobuf.Struct用于动态json时出错

时间:2018-07-20 11:52:12

标签: go protocol-buffers

我在原始文件中使用以下消息作为示例,

message Report {
    string name = 1;
    string desc = 2;
    google.protobuf.Struct criteria = 3;
}

并生成go客户端,服务器代码。当传递下面的json

{
"name": "My Report",
"desc": "My first report",
"criteria": {"fields": {"sum": "100"}}
}

作为请求请求正文到端点,并使用

进行编组
import  "github.com/golang/protobuf/jsonpb"

var u api.Report
if err := jsonpb.Unmarshal(r.Body, &u); err != nil {...

我不断收到此错误:

level=info msg="panic: reflect.Set: value of type map[string]*structpb.Value is not assignable to type map[string]*structpb.Value"

我也尝试使用gogo / protobuf / jsonpb,但尽管我仍在导入proto文件中,但也没有成功。

import "google/protobuf/struct.proto";

不确定我在这里想念什么。

0 个答案:

没有答案