NetPeek 是一款本地网络抓包与调试工具。所有流量分析都在本机完成,不上传服务器。本手册按核心功能分节,点顶部标签可跳转,文中蓝色按钮可直接打开对应功能。
抓包是一切的起点:开启后 App 通过本机 VPN 隧道接管流量,把每个请求/响应记录下来供查看。
列表左滑单条请求有快捷操作:复制 cURL、加过滤、加 MITM、基于此请求新建重写、导出 HAR、收藏、删除。
要看到 HTTPS 的明文内容,需安装并信任 NetPeek 在本机生成的 CA 证书。这一步由你手动完成,iOS 会强制经过「设置」确认。
http://127.0.0.1:8080 的证书安装页,下载描述文件。重写 = 不改代码就改包:加请求头、替换响应字段、Mock 接口、拦广告、重定向。一条规则 =「什么时候生效(条件)」+「做什么(动作)」。新手用简单模式,点几下即可。
| 意图 | 用途 |
|---|---|
| 改 Header | 给请求/响应加、改、删一个头 |
| 改 Body | 把响应/请求正文里的一段文本替换掉 |
| Mock 响应 | 不发真实请求,直接返回自定义内容 |
| 拦截请求 | 返回空响应 / 空 JSON / 空图片,常用于屏蔽广告埋点 |
| 重定向 | 把请求跳到另一个 URL(如线上→测试) |
| 本地文件 | 用设备上的文件内容作为响应返回 |
专家模式直接写规则语句,能力最全。动作里第一个符号(^ 替换、~ 删除、@ 开头的整体动作)决定「做什么」,后面 @req.*/@rsp.* 决定「对哪里」,引号里是值。
";中文全角引号 「」 会使规则静默失效。| 对象 | 含义 | 示例 |
|---|---|---|
@req.host | 请求域名 | @req.host CONTAINS "example.com" |
@req.api | 请求路径 | @req.api BEGINSWITH "/api/v1" |
@req.url | 完整链接 | @req.url MATCHES ".*\.jpg(\?.*)?$" |
@req.query | 查询字符串 | @req.query CONTAINS "debug=1" |
@req.method | 请求方法 | @req.method == "POST" |
@req.port / @req.schema | 端口 / 协议 | @req.schema == "http" |
@req.header["名"] | 请求头 | @req.header["Content-Type"] CONTAINS "json" |
@req.bodyText | 请求正文 | @req.bodyText CONTAINS "vip" |
@rsp.header["名"] | 响应头 | @rsp.header["Content-Type"] CONTAINS "json" |
@rsp.bodyText | 响应正文 | @rsp.bodyText CONTAINS "false" |
@rsp.status / @rsp.statusLine | 状态码 / 状态行 | @rsp.status == "404" |
比较:== != > < >= <= CONTAINS BEGINSWITH ENDSWITH LIKE(通配 */?) MATCHES(正则,整体匹配) IN ANY/ALL/NONE。逻辑:&&(并且) ||(或者) !(取反),可用 () 分组。
| 动作 | 说明 | 示例 |
|---|---|---|
^ | 替换/插入 | ^@req.header["X-Debug"] "1" |
~ | 删除 | ~@req.header["Authorization"] |
@mock | 直接返回自定义响应 | @mock "{\"ok\":true}" |
@reject* | 返回空内容(空/空图/空对象/空数组) | @reject-array |
@redirect | 重定向(可带 @301…@308) | @redirect 307 "https://test/x" |
@map-local | 用本地文件当响应 | @map-local "/共享目录/mock.json" |
@break | 中断请求 | @break |
条件:@req.host CONTAINS "api.example.com" && @req.api BEGINSWITH "/feature" 动作1:^@req.header["X-Debug"] "1" 动作2:^@rsp.bodyText "\"enabled\":false" "\"enabled\":true"
当规则不够用时,用 JavaScript 脚本对命中请求做更灵活的处理:读取/改写请求与响应、解压 gzip、按条件计算返回值等。脚本按 host 生效,和规则一样在隧道里运行。
$utils 等辅助能力,如 gzip 解压)。把一条抓到的请求保存下来,随时改改参数再发一遍,用于接口联调、压测复现。支持从请求详情一键生成。
把常用的值(如某段 Mock JSON、Token、测试地址)存成常量,规则里用 ${常量ID} 引用,改一处即可全局生效。
抓包列表会很长。用过滤器把噪音去掉:
出于性能与稳定,NetPeek 只对你指定的域名做 HTTPS 解密(MITM),其余走透明转发。名单支持通配:
+域名 / 直接写域名 = 解密该域名;* = 解密全部。-*域名* = 明确不解密(黑名单,优先级高于通配)。在设置 → 工具箱中,可使用编码转换、哈希与加解密、时间戳、UUID、JSON 格式化等常用开发小工具。写重写规则前,可用正则工具先验证匹配是否正确。
若你希望用电脑上的 AI 客户端协助分析本机抓包,可开启 NetPeek MCP 服务。入口在设置 → NetPeek MCP,默认关闭。
把重写规则分享给同事,或导入他人发来的规则。使用前请先登录账号。