Skip to content

接口请求捕获

概述

扩展通过 chrome.webRequest API 自动监听当前页面的网络请求,捕获 XMLHttpRequest 和 fetch 类型的接口请求记录。

捕获范围

扩展默认仅监听配置的 监听域名monitoredOrigins)范围内的请求,默认值为 localhost127.0.0.1

你可以在设置中新增其他域名,支持通配符格式,例如 *.example.com

捕获的信息

每个请求记录包含以下信息:

字段说明
请求方法GET / POST / PUT / DELETE 等
请求路径完整的请求 URL
状态码HTTP 状态码(200、404、500 等)
请求头包含 traceId 等关键标识
响应头包含 traceId 等关键标识
请求时间请求发起的精确时间
耗时请求从发起到完成的时间间隔
异常状态状态码 >= 400 或命中自定义异常规则时标记
响应快照响应体裁剪后的快照(用于异常规则判断)
请求入参请求参数(query / body)

响应体捕获

扩展通过注入页面脚本(page-network-hook.js)来拦截 window.fetchXMLHttpRequest,捕获响应体内容。

响应体经过裁剪后保存为快照:

  • 最多保留 20 个 key
  • 嵌套深度限制为 3 层
  • 字符串截断至 300 字符
  • 数组元素在裁剪后仅保留结构信号

裁剪后的快照仅用于自定义异常规则的判断,不用于其他用途。

缓存管理

捕获的请求记录按标签页(tab)维度缓存:

  • 每个标签页最多缓存 200 条 请求记录
  • 标签页关闭时自动清理
  • 后台 Service Worker 重启时通过 chrome.storage.session 恢复
  • 主动点击"清空"可清除当前标签页的记录

过滤展示

在 popup 中展示的请求会根据 接口前缀过滤apiPrefixes)进一步筛选,默认前缀为 /api/saas/

只有路径匹配前缀的接口才会在列表中展示和参与复制。

基于 MIT 协议开源