protoc下载:https://github.com/protocolbuffers/protobuf/releases
protoc-gen-go:go get -u github.com/golang/protobuf/protoc-gen-go
文件以.proto后缀
结构定义可以使message/service/enum
一个message定义了一个请求或响应消息的消息格式
一个service定义了rpc服务定义的方法
————————————————
syntax = "proto3";//版本号
package main; //包名
enum Foo{
FIRSTV_ALUE=1;//枚举
}
//定义消息
message SongServiceRequest{
required string name =1;
}
service SearchService{
rpc search(searchRequest)retreuns(searchResponse)
}
生成go文件:protoc --go_out=plugins=grpc:. message.proto
限定修饰符 | 数据类型 | 字段名称 | = | 字段编码值 | [字段默认值]
修饰符:required\optional\repeated
数据类型:bool/double/float/int32/uin32/sint32/sing32/fixed32/string/byte/unem/message
字段名:first_name
编码值:1-15