go-micro客户端取不到服务端响应的数据
go-micro
使用的是v2
版本
proto文件:
syntax="proto3";
package pb;
message Response {
string id=1;
string name=2;
}
...
服务端的方法:
type Say struct {}
func (s *Say) Hello(_context.Context, in *pb.Request,out *pb.Response) error {
fmt.Println(in)//客户端请求时这里能正常输出请求的数据
//这样写,客户端取不到数据
/*
out = &pb.Response{
Id: "111",
Name: "张三",
}
*/
//这样写,客户端能取到数据
out.Id = "111"
out.Name = "张三"
return nil
}
直接用结构给响应赋值,客户端取不到数据而为每个字段单独赋值,客户端就可以取到数据
这是为什么呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
注释的代码改的是形参吧,实际上对原来的out指向的数据并没有修改