我有一个用Go编写的服务,它从rest获取数据,并将数据作为grpc服务器返回。我得到了一系列的物体。我想通过grpc原型文件返回它。但是由于类型问题,它一直失败,因为来自api的数据是[]接口{},我不知道如何通过protobuf响应返回它。
下面是go lang代码
return &waas.BankListResponse{
Status: result.Data["Status"].(bool),
Message: result.Data["Message"].(string),
Data: result.Data["banks"].([]*waas.Banks),
}, nilproto文件
message banks {
string bankCode = 1;
string bankName = 2;
}
message BankListResponse {
bool Status =1;
string Message = 2;
repeated banks data = 3;
}所以result.Data["bank"]是银行的数组,数据类型是[]interface{}。
样本数据
{
"banks": [
{
"bankCode":"",
"bankName":""
},
{
"bankCode":"",
"bankName":""
}
]
}所以有人能帮我指出如何在proto文件上返回这样的数据。
发布于 2022-08-07 02:47:47
您需要编写自定义代码来将数据从接口传输到proto对象。您将返回这个新的proto对象作为响应。
https://stackoverflow.com/questions/73264389
复制相似问题