环境搭建
mac os用户
brew install protobuf
protoc --version
windows 用户去下载客户端安装,添加环境变量即可
项目搭建
# 创建项目并且进入项目
mkdir study_grpc01;cd study_grpc01
# 使用go module
go mod init study_grpc01
# 引入依赖
go get -u google.golang.org/grpc
go get -u github.com/golang/protobuf/protoc-gen-go
创建.proto文件,用于生成go文件
mkdir pb; cd pb;vim helloword.proto
在helloword.proto文件中黏贴一下内容
syntax = "proto3";
option go_package="./";
option java_multiple_files = true;
option java_package = "io.grpc.examples.helloworld";
option java_outer_classname = "HelloWorldProto";
package helloworld;
// The greeting service definition.
service Greeter {
// Sends a greeting
rpc SayHello (HelloRequest) returns (HelloReply) {}
rpc SayHelloAgain (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
string name = 1;
}
// The response message containing the greetings
message HelloReply {
string message = 1;
}
# 项目根目录,根据.proto文件生成golang代码
cd .. && protoc --go_out=plugins=grpc:./pb pb/*.proto
# 查看当前项目目录结构
tree
.
├── go.mod
├── go.sum
└── pb
├── helloword.pb.go
└── helloword.proto
1 directory, 4 files