跳转到内容
EN

核心概念

在深入了解功能之前,了解 RelayCraft 是什么以及它如何与您的网络流量交互非常有帮助。如果您使用过 Charles Proxy、Fiddler 或 Whistle 等工具,许多概念都会让您感到熟悉。

RelayCraft 充当您的客户端(浏览器、移动应用或后端服务)与互联网之间的中间人(代理服务器)。

您的应用程序不再直接与服务器对话,而是与 RelayCraft 对话,然后由 RelayCraft 代表您与服务器对话。这种架构使 RelayCraft 能够:

  1. 检查: 准确查看正在发送和接收的数据。
  2. 修改: 即时更改请求或响应。
  3. 分析: 衡量性能并检测错误。

它是如何工作的 (HTTPS 流量解密)

Section titled “它是如何工作的 (HTTPS 流量解密)”

对于标准的 HTTP 流量,RelayCraft 只是简单地转发文本。但是,大多数现代流量都是加密的 (HTTPS)。为了检查 HTTPS 流量,RelayCraft 使用了一种称为 MITM (中间人) 代理 的技术。

  1. 握手: 当您的客户端尝试连接到安全服务器(例如 google.com)时,RelayCraft 会拦截连接。
  2. 证书: RelayCraft 为 google.com 生成一个动态安全证书,并使用其自己的 根证书颁发机构 (Root CA) 对其进行签名。
  3. 信任: 要使其工作,您的设备必须 “信任” RelayCraft 的根 CA。一旦受信任,您的设备就会接受 RelayCraft 的证书为有效证书。
  4. 解密: RelayCraft 现在可以解密流量,以纯文本形式向您展示,并在将其发送到目的地之前重新加密。

在 RelayCraft 中,单个请求/响应对称为一个 Flow。一个 Flow 会经历几个阶段,您可以在其中进行干预:

  1. 请求阶段: 客户端发送请求。
    • 干预: 您可以在请求离开您的计算机 之前 修改标头、正文或 URL。
    • 规则: 远程映射 (Map Remote), 请求重写 (Rewrite Request)。
  2. 服务器阶段: RelayCraft 将请求转发给服务器。
  3. 响应阶段: 服务器发送响应。
    • 干预: 您可以在响应到达客户端 之前 修改状态代码、正文或标头。
    • 规则: 本地映射 (Map Local), 响应重写 (Rewrite Response)。
  4. 客户端阶段: 客户端收到(可能已修改的)响应。

RelayCraft 提供两种操作流量的方式:

规则引擎 是一个用于常见任务的无代码界面。

  • 适用于: 重定向 URL、模拟 API 响应、修改标头和限制速度。
  • 示例: “将 api.example.com/v1/user 映射到本地 JSON 文件。“

对于高级场景,RelayCraft 提供了 Pythonmitmproxy 的全部功能。

  • 适用于: 复杂的逻辑、基于内容的动态修改、保存自定义日志或混沌工程。
  • 示例: “如果响应体包含 ‘error’,则自动重试请求 3 次。“

与传统代理不同,RelayCraft 是以 AI 为核心构建的。

  • 自然语言规则: 您无需手动配置正则,只需告诉 AI:“阻止所有跟踪像素。”
  • 流量分析: 要求 AI “解释为什么这个请求失败了”“为此 JSON 响应生成 TypeScript 接口。”
  • 脚本生成: AI 可以为您编写复杂的 Python 拦截脚本。