当前位置: 首页 > news >正文

比较简洁大方的网站济南搜点网络科技有限公司

比较简洁大方的网站,济南搜点网络科技有限公司,公司装修设计,微云怎么做网站文章目录 基本环境处理编译pb接口开启rpc调用业务观察qa1 能取出protoc里面的字段值吗? 基本环境处理 https://cn.dubbo.apache.org/zh-cn/overview/quickstart/go/install/ 这里没有 protoc-gen-go --version 执行 go get -u github.com/golang/protobuf/protoc…

文章目录

    • 基本环境处理
    • 编译pb接口
    • 开启rpc调用
    • 业务观察
    • qa1 能取出protoc里面的字段值吗?

基本环境处理

https://cn.dubbo.apache.org/zh-cn/overview/quickstart/go/install/

在这里插入图片描述

这里没有 protoc-gen-go --version

执行

 go get -u github.com/golang/protobuf/protoc-gen-go

在这里插入图片描述
进入到这个目录执行

go build
go install

这样就会出现在 go/bin 目录里面了,如果已经增加了这个环境变量了,就可以使用该命令了

在这里插入图片描述

分别验证

protoc --version

libprotoc 22.2

protoc-gen-go-triple --version

protoc-gen-go-triple 1.0.8

protoc-gen-go --version

protoc-gen-go: unknown argument “–version” (this program should be run by protoc, not directly)

这个错误先不管。

编译pb接口

protoc --go_out=. --go-triple_out=. ./samples_api.proto
  • –go_out=. 用到protoc-gen-go插件,生成文件到当前目录
  • –go-triple_out=. 使用 protoc-gen-go-triple插件,生成文件到当前目录

当然默认的样例工程其实已经包含了编译好的文件

开启rpc调用

回到项目根目录

go mod tidy

分别启动server端和client端

cd go-server/cmd
go run .
cd go-client/cmd
go run .

服务端效果

在这里插入图片描述

客户端效果

在这里插入图片描述

业务观察

在这里插入图片描述

这个的提供的样例模块

protoc的定义是

message HelloRequest {string name = 1;
}

翻译出来的go代码对应核心的地方就是这里
在这里插入图片描述

client代码增加注释

package mainimport ("context"
)import ("dubbo.apache.org/dubbo-go/v3/common/logger""dubbo.apache.org/dubbo-go/v3/config"_ "dubbo.apache.org/dubbo-go/v3/imports""helloworld/api"
)// 创建一个grpc的实例
var grpcGreeterImpl = new(api.GreeterClientImpl)// export DUBBO_GO_CONFIG_PATH= PATH_TO_SAMPLES/helloworld/go-client/conf/dubbogo.yaml
func main() {config.SetConsumerService(grpcGreeterImpl)if err := config.Load(); err != nil {panic(err)}logger.Info("start to test dubbo")// 传递参数req := &api.HelloRequest{Name: "laurence",}// grpc的调用reply, err := grpcGreeterImpl.SayHello(context.Background(), req)if err != nil {logger.Error(err)}logger.Infof("client response result: %v\n", reply) // reply是具体响应的信息
}

qa1 能取出protoc里面的字段值吗?

可以直接用reply.xxx 取值

package mainimport ("context"
)import ("dubbo.apache.org/dubbo-go/v3/common/logger""dubbo.apache.org/dubbo-go/v3/config"_ "dubbo.apache.org/dubbo-go/v3/imports""helloworld/api"
)// 创建一个grpc的实例
var grpcGreeterImpl = new(api.GreeterClientImpl)// export DUBBO_GO_CONFIG_PATH= PATH_TO_SAMPLES/helloworld/go-client/conf/dubbogo.yaml
func main() {config.SetConsumerService(grpcGreeterImpl)if err := config.Load(); err != nil {panic(err)}logger.Info("start to test dubbo")// 传递参数req := &api.HelloRequest{Name: "laurence",}// grpc的调用reply, err := grpcGreeterImpl.SayHello(context.Background(), req)if err != nil {logger.Error(err)}logger.Infof("client response result: %v\n", reply) // reply是具体响应的信息logger.Infof("Name is %v \n", reply.Name)logger.Infof("Age is %v \n", reply.Age)logger.Infof("Id is %v \n", reply.Id)
}
http://www.yayakq.cn/news/32639/

相关文章:

  • 网站查询域名解析ip拉新推广怎么做
  • 温州微网站制作哪里有网络维护公司
  • 网站源码带手机版广西建设网站在线服务
  • wordpress模板兔南昌网站排名优化
  • 潮州移动网站建设做资格核查在哪个网站
  • 免费seo网站推荐一下软件汕头企业自助建站系统
  • 济南网站建设选聚搜网络认可网站建设前端学什么语言
  • 易语言做网站登录装饰设计网站
  • 网站怎么能被百度收录江西宗杰建设工程有限公司网站
  • 企业网站开发多少钱津seo快速排名
  • 哪些网站用echarts做的做导航网站电脑设备
  • 南昌 网站制作wordpress滑动登录
  • wordpress仿站入门实用网站建设期末考试
  • 网站可以用cdr做吗信阳网站建设信阳
  • 网站设计建设案例减粘装置设备设计要点
  • 网站建设秋实素材网站推荐
  • 做网站排名收益百度爱采购排名
  • 电商网站建设行情济南工程造价信息网
  • 柳州住房和城乡建设部网站百度seo服务方案
  • 建新建设集团有限公司网站网站建设管理风险
  • 无锡网站制作排名网站建设专家工作总结
  • 建设网站怎么搞室内设计师服务平台
  • 宜昌市城市建设学校网站asp网站模板安装
  • 深圳网站建设公司开发制作网站wordpress初始设置密码
  • 网站制作案例流程图微信小程序彻底清除数据
  • 怎样安全做黑色彩票网站如何不花钱做网站
  • 深圳建设工程交易中心网站长治做网站哪里不错
  • 青岛正规网站建设哪家好安庆网站建设专业
  • 高校网站设计方案c 做网站
  • 单页网站 产品放哪个人社保缴费年限怎么查询