波斯马BOSSMA Information Technology

使用grpcurl测试gRPC服务

发布时间:2022年5月11日 / 分类:Tools / 2,433 次浏览 / 评论

grpcurl可以像curl访问http服务一样访问gRPC服务,所以可以用来测试gRPC服务是否正常。

假设有这样一个服务,proto定义为:

syntax = "proto3";

option go_package="/proto";

package Business;

service Hello {
  rpc Say (SayRequest) returns (SayResponse);
}

message SayResponse {
  string Message = 1;
}

message SayRequest {
  string Name = 1;
}

如果gRPC服务暴露了proto协议,可以直接如下访问:

./grpcurl  -d '{\"Name\":\"BOSIMA\"}' -plaintext 127.0.0.1:8088 Business.Hello/Say
  • -d 参数设置的是方法参数,默认是json格式。
  • -plaintext 参数是因为我这里没有启用TLS。

如果gRPC服务没有暴露proto协议,得有proto文件,然后可以这样访问:

./grpcurl -import-path ./proto -proto hello.proto -d '{\"Name\":\"BOSIMA\"}' -plaintext 127.0.0.1:8088 Business.Hello/Say

如命令所示,需要指定proto文件所在的路径和名称。

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自波斯马,原文地址《使用grpcurl测试gRPC服务

关键字:

建议订阅本站,及时阅读最新文章!
【上一篇】 【下一篇】

发表评论