gRPC Nodejs Quick start [https://grpc.io/docs/languages/node/quickstart/]
helloworld.proto
syntax = "proto3"; //语法版本如果不填 默认为proto2
package helloworld; //包名
/*
定义结构
string/int32 字段类型 具体有哪些类型看这里->https://protobuf.dev/programming-guides/proto3/#scalar
id/name/age 字段名
1/2/4 字段编号,一旦确定不要修改,1-15给常用字段使用(占用1字节),16-2047(占用2字节)
*/
message HelloRequest {
string id = 1;
string name = 2;
int32 age = 4;
}
message HelloReply {
string message = 1;
}
service Greeter {
// 定义一个rpc函数
rpc SayHello (HelloRequest) returns (HelloReply) {}
// 定义一个无参数 rpc函数
rpc EmptyFunc(google.protobuf.Empty) returns (google.protobuf.Empty) {}
}
具体server和client看