前置条件:
- golang版本1.19(其余版本未测试)
- macos版本13.1(其余版本或系统未测试)
- 下载最新版protobuf工具包github.com/protocolbuf…
(拖到最下方资源区)
- 给本机安装go-protobuf工具包(前提需要安装golang环境)
go install github.com/golang/protobuf/protoc-gen-go@latest
- 新建proto文件
syntax = 'proto3'; //固定开头,使用proto3协议
option go_package = "./;hello";//这一行十分重要,不加就会提示错误
message HelloRequest{ //message为固定写法,HelloRequest为结构体名称
string name = 1; //1是编号
}
- 生成对应的golang文件
protoc -I . hello.proto --go_out=plugins=grpc:.
- 使用
s := hello.HelloRequest{
Name: "JOJO",
}
rsp, _ := proto.Marshal(&s)