EchoProxy:全新的 API 调试、抓包、代理工具

316 阅读2分钟

作为程序员,每天都要和API打交道,开发和调试阶段都需要深入摸清楚API的内部情况。今天,我要向大家介绍一款免费的 API 调试、代理、抓包工具 —— EchoProxy。

一句话简介:EchoProxy = Fiddler + Charles + Postman

🎉一、强大功能,轻松上手

  1. HTTP/HTTPS 流量分析:EchoProxy 提供完整的网络调试工具套件,完全支持 HTTP2,能够帮助开发者彻底还原 bug 场景,让问题无处遁形。
  2. 多种过滤器:通过结合协议、内容类型、状态码、URL、域名、应用名称等复杂过滤条件,开发者可以轻松地使用多种过滤器来缩小搜索范围,快速定位问题。
  3. Map Mock:这是 EchoProxy 的核心功能之一。它易于学习和使用,能够优雅地映射 / 模拟 REST API 的请求 / 响应,为开发和测试带来极大的便利。
  4. 任意语言编写扩展:无论是 JavaScript、Python、Java 还是 Go 等编程语言,都可以用来编写 Map Mock 脚本扩展,让开发者能够根据自己的需求实现复杂逻辑。
  5. API测试EchoSend:只需点击一下,就可以重新发送任何捕获的请求,无需逐个输入 HTTP 字段,效率提高 100 倍。

1.png

🎉二、性能卓越,轻装上阵

EchoProxy 由 Golang 驱动,性能高,秒级启动,资源消耗低。安装文件大小仅为 8MB,不会给你的设备带来沉重负担。

memory.png 截图中EchoProxy记录了2288条记录,占用的内存依然很少,且使用流畅。

🎉三、用户友好,体验至上

  1. 现代直观的用户界面:精心设计的界面,每个功能模块无缝集成,提供连贯的体验。让开发者在使用过程中能够轻松上手,快速掌握。
  2. Map Mock 乐趣十足:以有趣的方式进行请求 / 响应的映射和模拟,简化 API 调试和测试,提高效率。
  3. 简单如 JSON:基本语法类似于 JSON,易于快速掌握和学习。

2.png

🎉四、Map Mock脚本示例

修改request method:

on_request := func(env, req) {
  return {
    method: "POST"
  }
}

修改request header

on_request := func(env, req) {
  // get value of Head-Example, if undefined returns X
  example := string(req.header["Head-Example"], "X")
  return {
    header: {
      "User-Agent": "EchoSend API Testing Client",
      "Head-Example": "Hello " + example
    }
  }
}

修改该response body,在指定位置插入文本:

text := import("text")
on_response := func(env, res) {
  // returns the index of substr in s, or -1 if not present
  n := text.index(res.text, "EchoProxy")
  if n >= 0 {
    return {
      body: res.text[0:n] + "powerful " + res.text[n:]
    }
  }
  return {}
}

更多Map Mock脚本示例可以查看文档:docs.echolabx.com/mapmock/exa…

如果你正在为 API 抓包和调试而烦恼,那么不妨试试免费EchoProxy。它将为你的开发工作带来全新的体验,让你轻松应对各种挑战。

官方网址: www.echolabx.com/
Map Mock: docs.echolabx.com/mapmock