问题描述
我正在尝试创建grpc服务器流终结点。
这是我的protobuf文件
Syntax = "proto3";
option go_package = "mirror_streampb";
option java_package = "com.mirror_stream";
option java_outer_classname = "StreamIdsProto";
option java_multiple_files = true;
package mirror_stream;
service StreamIDs {
rpc ListIDs(ListIDsRequest) returns (stream ListIDsResponse) {}
}
message ListIDsRequest {
int32 num = 1;
}
message ListIDsResponse {
int32 num = 1;
int32 id = 2;
}
func (s *Server) ListIDs(req *streampb.ListIDsRequest,stream streampb.StreamIDs_ListIDsServer) error {
for i := int32(0); i < req.Num; i++ {
resp := &streampb.ListIDsResponse{
Num: i,Id: int32(rand.Intn(10000000)),}
if err := stream.Send(resp); err != nil {
return err
}
}
return nil
}
因此,当我尝试调用该方法时,出现此错误Failed while making call: code:unkNown message:grpc: client streaming protocol violation: get <nil>,want <EOF>
我不确定它为什么来自哪里以及来自哪里。
有人可以帮我解决这个问题吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)