发现gRPC服务的标准方法

时间:2017-10-13 05:49:16

标签: grpc

远程客户端在gRPC服务器上发现可用服务的标准方法是什么?我知道有一种叫做gRPC反射的东西。但是我们如何使用它呢?我正在寻找与语言无关的解决方案(提供gRPC支持)

1 个答案:

答案 0 :(得分:2)

我看到问题的日期对我的回答可能毫无用处。

据我了解浏览日志文件并部署reflection功能,grpc客户端使用/grpc.reflection.v1alpha.ServerReflection/ServerReflectionInfo协议向POST服务器发送POST请求HTTP/2.0到grpc服务器以接收公开服务及其服务的列表方法,例如:

$ grpcurl --plaintext host:8000 list
grservices.diagnostic
$ ~/gopath/bin/grpcurl --plaintext host:8000 list grservices.diagnostic
GetDateTime
GetTimeZones

日志:

"POST /grpc.reflection.v1alpha.ServerReflection/ServerReflectionInfo HTTP/2.0"
"POST /grpc.reflection.v1alpha.ServerReflection/ServerReflectionInfo HTTP/2.0"