Skip to content

APX103/recording_proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Recording Proxy

HTTP 请求录制代理,带 Web 管理界面。支持录制、筛选、导出 cURL、修改目标地址重放。

快速开始

# 安装 & 构建
npm run setup

# 启动
npm start

打开 http://localhost:3456

使用流程

  1. 创建会话 — 点击 + New,填写代理端口和目标服务地址
  2. 录制 — 调用方把请求发到代理端口,代理转发到目标并记录请求/响应
  3. 筛选 — 按 Method、Path(正则)、Status Code 过滤
  4. 收藏 — 星标重要请求
  5. 导出 cURL — 点击 📋 cURL 复制为可执行的 curl 命令
  6. 重放 — 单条或批量重新发送请求,支持修改目标 IP/Port
  7. Resume / Restart — Resume 保留已有记录继续录制,Restart 清空重新开始

API

管理端口默认 3456,可通过环境变量 MANAGEMENT_PORT 修改。

Method Path 说明
POST /api/sessions 创建录制会话
GET /api/sessions 列出所有会话
GET /api/sessions/:id 获取会话详情(含所有 exchanges)
DELETE /api/sessions/:id 删除会话
POST /api/sessions/:id/stop 停止录制
POST /api/sessions/:id/resume 继续录制(保留已有记录)
POST /api/sessions/:id/restart 重新录制(清空记录)
GET /api/sessions/:id/exchanges 获取 exchanges(支持筛选)
PATCH /api/sessions/:id/exchanges/:eid 更新 exchange(star/tags)
DELETE /api/sessions/:id/exchanges 批量删除 exchanges
POST /api/sessions/:id/exchanges/:eid/replay 重放单条请求
POST /api/sessions/:id/replay-all 批量重放
GET /api/sessions/:id/exchanges/:eid/curl 导出为 curl 命令

筛选参数

GET /api/sessions/:id/exchanges 支持 query 参数:

  • method — HTTP 方法(GET/POST/PUT/DELETE/PATCH)
  • pathPattern — 路径正则
  • statusCode — 响应状态码
  • starred=true — 仅星标
  • tags=a,b — 包含指定标签

重放覆盖目标

replayreplay-all 请求 body 可选:

{
  "overrideHost": "10.0.0.5",
  "overridePort": 3000
}

curl 导出也可通过 query 参数 overrideHost / overridePort 指定目标。

项目结构

src/
  index.ts              # 入口,管理 UI 服务
  proxy/recorder.ts     # HTTP 代理核心(录制/转发/重放/curl 生成)
  api/routes.ts         # REST API
  store/index.ts        # 文件持久化
  types/index.ts        # 类型定义
frontend/               # React + Vite 前端
data/                   # 运行时 JSON 存储

数据持久化

录制数据存储在 data/session_{id}.json,每个会话一个文件,包含完整配置和所有请求/响应记录。重启服务后数据不丢失。

About

GLM5.1 两条命令做出来的,可以做proxy的时候获取http请求并支持重放,很好用的测试小工具

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors