gPRC (protobuf) return 可以是空消息吗?
Can gPRC (protobuf) return a null message?
我们的客户端调用 gRPC 服务器,理想情况下应该 return 一个 MyMessage 响应对象。
但是这个MyMessage对象可以为null吗?或者 gRPC 不能 return null object 因为如果它是 null,grpc 会抛出异常?
回答您的问题,检查这些 Google docs 其中说:
Note that no Java protocol buffer methods accept or return nulls unless otherwise specified.
所以 gRPC 似乎不能 return null。顺便说一句,你可以看看 google.protobuf.empty and reference for Java
您可以像这样定义原型:
import "google/protobuf/empty.proto";
service SomeService {
rpc SomeOperation (google.protobuf.Empty) returns (google.protobuf.Empty) {}
}
我们的客户端调用 gRPC 服务器,理想情况下应该 return 一个 MyMessage 响应对象。
但是这个MyMessage对象可以为null吗?或者 gRPC 不能 return null object 因为如果它是 null,grpc 会抛出异常?
回答您的问题,检查这些 Google docs 其中说:
Note that no Java protocol buffer methods accept or return nulls unless otherwise specified.
所以 gRPC 似乎不能 return null。顺便说一句,你可以看看 google.protobuf.empty and reference for Java
您可以像这样定义原型:
import "google/protobuf/empty.proto";
service SomeService {
rpc SomeOperation (google.protobuf.Empty) returns (google.protobuf.Empty) {}
}