服务器其它

关注公众号 jb51net

关闭
grpcui(gRPC服务器图形界面) v1.1.0 官方免费版

grpcui(gRPC服务器图形界面) v1.1.0 官方免费版

热门排行

简介

grpcui是一款非常不错的命令行工具,可以让你通过浏览器与gRPC服务器交互。它有点像Postman,不过是针对gRPC APIs而不是REST,在某些方面,它就像grpcurl的扩展。grpcurl是一个命令行界面,而grpcui则提供了一个基于Web/浏览器的GUI。这让你可以交互式地构建请求以发送到gRPC服务器。欢迎需要此款工具的朋友前来下载使用。

功能介绍

grpcui 支持各种 RPC 方法,包括流式方法。但是,它要求你一次性构造整个请求消息流,然后一次性渲染整个结果的响应消息流(所以你不能像grpcurl那样与双向流交互)。

grpcui支持纯文本服务器和TLS服务器,并且有许多TLS配置选项。它还支持相互的TLS,即客户端需要出示客户端证书。

如上所述,如果服务器支持反射服务,grpcui就可以无缝工作。如果不支持,你可以提供.proto源文件,也可以向grpcui提供protoset文件(包含编译后的描述符,由protoc产生)。

web UI除了定义请求消息数据外,还允许你设置请求元数据。在定义请求消息数据时,它使用动态的HTML表单,支持所有可能的protobuf消息的数据输入,包括对知名类型(如google.protobuf.Timestamp)、one ofs和地图的丰富支持。

除了通过HTML形式输入数据外,还可以以JSON格式输入数据,将整个JSON请求体键入或粘贴到文本表单中。

发出RPC后,Web UI会显示所有gRPC响应元数据,包括服务器发送的头和预告片。当然,它还会以HTML表格的形式显示一个人类可以理解的响应体。

grpcui安装步骤

go get github.com/fullstorydev/grpcui

go install github.com/fullstorydev/grpcui/cmd/grpcui

苦于没有科学上网,所以没能一步到位,手动下载部分依赖,记录如下:

//安装go环境

yum install go

mkdir gopath

export GOPATH=/home/xiaofeng/gopath/

 

//go get 安装部分

export GOPROXY=https://mirrors.aliyun.com/goproxy/

go get github.com/golang/protobuf

go get github.com/fullstorydev/grpcui

 

//git clone安装部分

cd github.com/envoyproxy

git clone https://github.com/envoyproxy/go-control-plane.git

mkdir golang.org/x -p

 

cd golang.org/x

git clone https://github.com/golang/net.git

git clone https://github.com/golang/text.git

git clone https://github.com/golang/sys.git

git clone https://github.com/golang/oauth2.git

 

mkdir google.golang.org

cd google.golang.org/

git clone https://github.com/protocolbuffers/protobuf-go.git

mv protobuf-go protobuf

git clone https://github.com/googleapis/go-genproto.git

mv go-genproto/ genproto

git clone https://github.com/grpc/grpc-go.git

mv grpc-go/ grpc

 

mkdir cloud.google.com

cd cloud.google.com/

git clone https://github.com/googleapis/google-cloud-go.git

mv google-cloud-go/ go

使用

//连接本地的50051grpc服务端口,绑定192.168.13.38建立grpcui的访问端口(随机)

#grpcui -bind 192.168.13.38 -plaintext 127.0.0.1:50051

gRPC Web UI available at http://192.168.13.38:38075/

note:注意关闭防火墙

systemctl disable firewalld

浏览器访问

http://192.168.13.38:38075/

更新日志

变化

这个版本包括对Web UI中的一个BUG的修复,对从源代码构建grpcui的用户的一个小修复,以及一些新功能。

网页界面

这些变化影响了命令行工具和 Go 包的使用。

UI现在除了 "请求"、"原始请求 "和 "响应 "选项卡外,还包括一个新的选项卡:"历史 "选项卡。当RPC被调用时,这将把请求的细节存储到浏览器本地存储中。然后,用户可以从这个选项卡中查看RPC的历史记录,并选择一个重新运行。

当试图将元素(通过绿色 "+"按钮)添加到重复或地图字段中时,在另一个地图字段的值内嵌套时,会发生运行时错误。这一点已得到修正。

大家还下载了