golang中如何使用GRPC,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
syntax="proto3";
package services;
message ProdRequest {
int32 prod_id=1;
}
message ProdResponse {
int32 prod_stock=1;
}
进入proto文件所在目录
protoc --go_out=../services Prod.proto
syntax="proto3";
package services;
message ProdRequest {
int32 prod_id=1;
}
message ProdResponse {
int32 prod_stock=1;
}
service ProdService {
rpc GetProdStock (ProdRequest) returns (ProdResponse);
}
protoc --go_out=plugins=grpc:../services Prod.proto
对外部提供http方式访问rpc服务
go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway
go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger
syntax="proto3";
package services;
import "google/api/annotations.proto";
message ProdRequest {
int32 prod_id=1;
}
message ProdResponse {
int32 prod_stock=1;
}
service ProdService {
rpc GetProdStock (ProdRequest) returns (ProdResponse){
option (google.api.http) ={
get: "/v1/prod/{prod_id}"
};
}
}
protoc --grpc-gateway_out=logtostderr=true:../services Prod.proto
关于golang中如何使用GRPC问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/odetteisgorgeous/blog/4654139