protobuf入门篇(仅供golang开发者参考)

352 阅读1分钟

前置条件:

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