Fiddler 原理及iPhone的配置
原理:
首先Fiddler运行在自己的PC上,Fiddler运行的时候会在PC的8888端口开启一个代理服务,这个服务实际上是一个HTTP/HTTPS的代理。
确保手机和PC在同一个局域网内,我们可以使用手机模拟器通过虚拟网络连接,也可以使用手机真机和PC通过无线网络连接。
设置手机代理为Fiddler的代理地址。
这样手机访问互联网的数据包就会流经Fiddler,Fiddler再转发这些数据包到真实的服务器,服务器返回的数据包再由Fiddler转发回手机,Fiddler就起到中间人的作用,所有流量包都可以捕捉到,因此所有HTTP请求和响应都可以捕获到。
同时Fiddler还有权力对请求和响应进行修改。
第一步:配置网络
iPhone 和电脑连接同一个 WIFI。
第二步:配置 fiddler
1、打开 fiddler,进入 Tools —— Options
2、如下图设置:
3、设置完成后,保存,然后重启 fiddler。
第三步:手机设置代理
1、查看电脑的ip(控制面板--网络和共享中心--连接--详细信息):
一般类似10.*.*.* 或 172.16.*.* 或 192.168.1.* 这样的IP就是当前PC的局域网IP
2、iPhone 手机打开 “设置 —— 无线局域网”,点击已连接 wifi 后面的小叹号,如图:
3、然后滑动到页面最下方,点击“配置代理”,配置代理默认是关闭的。
选择“手动”,然后在“服务器”输入电脑的ip,在“端口”输入“8888”。
切记,抓包完成后,将配置代理设置为“关闭”,否则可能影响手机的上网。
第四步:安装证书
在 Safair 浏览器中打开刚配置过的地址
例如“192.168.1.1: 8888”。
点击圈出来的链接安装证书
只安装还不行,iPhone默认不会开启信任的,需要手动添加一下证书信任:设置 - 通用 - 关于本机,
最下面有个信任证书设置按钮,打开后是下面的页面,
将DO_NOT_TRUST_FiddlerRoot这个证书打开,不信任这个证书是抓不到https包的,同样的测试完之后你也可以将他关闭。