安装
go get -d -u github.com/golang/protobuf/protoc-gen-go go install github.com/golang/protobuf/protoc-gen-go
定义proto文件
syntax = "proto3"; package model; message SayParam { string msg = 1; } message Pair { int32 key = 1; string values = 2; } message SayResponse { string msg = 1; // 数组 repeated string values = 2; // map map<string, Pair> header = 3; RespType type = 4; } enum RespType { NONE = 0; ASCEND = 1; DESCEND = 2; } // 服务接口 service Say { rpc Hello(SayParam) returns (SayResponse) {} }
生成 go 代码
protoc --proto_path=/home/www/go/src --go_out=. /home/www/go/src/protoTest/common.proto proto_path
--proto_path=PATH Specify the directory in which to search for imports. May be specified multiple times; directories will be searched in order. If not given, the current working directory is used. If not found in any of the these directories, the --descriptor_set_in descriptors will be checked for required proto file.
- 表示导入包的寻找路径
- 命令的最后参数是proto文件路径
参考资料
以上所述就是小编给大家介绍的《go语言使用proto》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
精通Git(第2版)
Scott Chacon、Ben Straub / 门佳、刘梓懿 / 人民邮电出版社 / 2017-9 / 89.00元
Git 仅用了几年时间就一跃成为了几乎一统商业及开源领域的版本控制系统。本书全面介绍Git 进行版本管理的基础和进阶知识。全书共10 章,内容由浅入深,展现了普通程序员和项目经理如何有效利用Git提高工作效率,掌握分支概念,灵活地将Git 用于服务器和分布式工作流,如何将开发项目迁移到Git,以及如何高效利用GitHub。一起来看看 《精通Git(第2版)》 这本书的介绍吧!