I've seen two different ways of declaring an gRPC service using Protobuf v3. Some code has the rpc line end with a semicolon (such as the current proto3 documentation):
service SearchService {
rpc Search (SearchRequest) returns (SearchResponse);
}
Other code has the rpc line end with {}
:
service Greeter {
rpc SayHello (HelloRequest) returns (HelloReply) {}
}
Both of these compile with the protoc v3.0.0-alpha-2 compiler and produce the same (go) code.
What is the difference between the two syntaxes?
Nothing, really; they are equivalent.
The {}
syntax is used when there are options. If you don't specify any options, either syntax works (just like in C!).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With