【问题标题】:How to proxy gRPC calls如何代理 gRPC 调用
【发布时间】:2018-04-02 12:01:21
【问题描述】:

我正在尝试分析应用程序发送的信息,因此我设置了 Charles,但令我惊讶的是,没有任何信息被注销。

在反编译应用程序后,我发现它没有使用简单的 REST 调用,而是使用了一个名为 gRPC 的库。

有没有什么好的工具可以让我也看到应用程序发出的内容?

【问题讨论】:

  • 嗨,正在寻找相同的。你找到解决办法了吗?
  • @Vibhor 有什么更新吗?
  • nope ????:(...还在寻找..

标签: proxy grpc charles-proxy man-in-the-middle


【解决方案1】:

gRPC 使用 HTTP/2 作为传输协议。任何支持 HTTP/2 的前端和后端连接的代理都应该能够用于检查 gRPC 连接的数据包。请注意,某些代理仅支持前端或后端连接的 HTTP/2,并且与 gRPC 不兼容。

Envoy Proxy (https://www.envoyproxy.io/) 支持代理 gRPC 连接,并可配置为注销请求信息。

其他一些示例代理包括:

【讨论】:

    【解决方案2】:

    Mediator 是一个跨平台的 GUI gRPC 调试代理,类似于 Charles,但专为 gRPC 设计。

    无需任何配置即可转储所有gRPC请求,如果需要解析消息体,gRPC服务器需要支持Server Reflection特性。

    【讨论】:

      【解决方案3】:

      如果您要求使用 android,则有一个名为 HttpCanry 的应用程序。它可以记录请求/响应。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-09-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多