项目地址在 github 上: https://github.com/wuchangming/spy-debugger
一站式页面调试、抓包工具。远程调试任何手机浏览器页面,任何手机移动端 webview (如:微信, HybirdApp 等),支持: HTTP/HTTPS
1 、页面调试+抓包
2 、操作简单
3 、支持 HTTPS。
4 、spy-debugger
内部集成了weinre
、node-mitmproxy
、AnyProxy
。
5 、自动忽略原生 App 发起的 https 请求,只拦截 webview 发起的 https 请求。对使用了 SSL pinning 技术的原生 App 不造成任何影响。
6 、可以配合其它代理工具一起使用(默认使用 AnyProxy) [(设置外部代理)](#设置外部代理默认使用 anyproxy)
Windows 下
npm install spy-debugger -g
Mac 下
sudo npm install spy-debugger -g
第一步:手机和 PC 保持在同一网络下(比如同时连到一个 Wi-Fi 下)
第二步:命令行输入spy-debugger
,按命令行提示用浏览器打开相应地址。
第三步:设置手机的 HTTP 代理,代理 IP 地址设置为 PC 的 IP 地址,端口为spy-debugger
的启动端口(默认端口: 9888)。
第四步:安装证书。注:手机必须先设置完代理后再通过(非微信)手机浏览器访问http://spydebugger.com/cert
安装证书(手机首次调试需要安装证书,已安装了证书的手机无需重复安装)。
第五步:用手机浏览器访问你要调试的页面即可。
(默认端口: 9888)
spy-debugger -p 8888
spy-debugger -e http://127.0.0.1:8888
spy-debugger 内置 AnyProxy 提供抓包功能,但是也可通过设置外部代理和其它抓包代理工具一起使用,如: Charles 、 Fiddler 。
(默认: false)
spy-debugger -i true
(默认: true)
spy-debugger -b false
有些浏览器发出的 connect 请求没有正确的携带 userAgent ,这个判断有时候会出错,如UC 浏览器。这个时候需要设置为 false 。大多数情况建议启用默认配置: true ,由于目前大量 App 应用自身(非 WebView )发出的请求会使用到 SSL pinning 技术,自定义的证书将不能通过 app 的证书校验。
(默认: false)
spy-debugger -c true
spy-debugger
原理是集成了weinre
,简化了weinre
需要给每个调试的页面添加 js 代码。spy-debugger
原理是拦截所有 html 页面请求注入weinre
所需要的 js 代码。让页面调试更加方便。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.