无需登录 数据私有 本地保存

gRPC-Web 请求构建器 - 服务调用与响应查看

71
0
0
0
第一步:配置服务端点

在「服务端点配置」区域,填写以下信息:

  • 代理地址:输入你的 gRPC-Web 代理地址,例如 https://grpc-proxy.example.com。如果你使用 Envoy 作为代理,确保代理已正确配置 gRPC-Web 过滤器并启用了跨域支持。代理地址必须是完整 URL,包含协议前缀。
  • 超时时间:设置请求超时时间,默认为 10 秒,可根据网络状况和目标服务的响应时间进行调整。对于执行时间较长的服务端方法,建议适当增大超时值以避免请求被提前中断。
  • 服务方法路径:填写完整的服务方法路径,格式为 /包名.服务名/方法名,例如 /helloworld.Greeter/SayHello。路径中的包名、服务名和方法名必须与 .proto 文件中的定义完全一致。
  • Content-Type:根据需求选择合适的格式,默认为 application/grpc-web(二进制格式)。如果需要兼容性更好的文本传输,可以选择 application/grpc-web-text(Base64 编码格式)。
如果你的 gRPC 服务直接支持 gRPC-Web 协议(如使用 Connect 框架),可以直接在代理地址中填写服务地址本身,无需额外的代理服务器。
第二步:构建请求体

在「请求体」编辑区域,输入 JSON 格式的请求数据:

  • 可以直接在编辑器中输入 JSON 内容,编辑器会自动进行格式校验
  • 点击「格式化」按钮美化 JSON 格式,自动添加缩进和换行,提升可读性
  • 使用预设模板快速填充常见请求结构,包括 Hello World、查询请求、复杂对象和空对象
  • 在「Metadata/Headers」区域添加自定义请求头,如 authorizationx-request-id
注意:请求体中的字段名称和类型必须与 Protobuf 定义严格匹配,否则服务端可能返回 INVALID_ARGUMENT 错误。建议参考 .proto 文件中的 message 定义来构建请求体。
第三步:发送请求并查看响应

点击「发送请求」按钮,等待服务端响应:

  • 查看 HTTP 状态码(如 200 OK、404 Not Found),非 200 状态码通常表示代理或网络层问题
  • 查看 gRPC 状态码和状态消息,OK(0) 表示调用成功,其他状态码表示不同类型的错误
  • 分析响应耗时、响应大小和帧数量,评估服务端的响应性能
  • 展开 Trailers 查看完整的响应尾部信息,包含 gRPC 状态码和自定义元数据
提示:点击「预览请求帧」可以查看即将发送的二进制帧格式,便于理解 gRPC-Web 的底层传输机制。帧由 1 字节压缩标志、4 字节长度前缀和实际消息体组成。
第四步:利用历史记录提升效率

工具会自动将每次成功的请求保存到历史记录中:

  • 历史记录保存在浏览器本地存储中,关闭页面后数据不会丢失
  • 从历史列表中选择任意一条记录,即可快速回填服务端点配置和请求体内容
  • 适合需要反复测试同一服务端点的场景,避免重复输入相同的配置信息
  • 如需清除所有历史记录,可手动清空浏览器本地数据