1.(1)电脑端打开安装好的的fiddler,打开Tools-Options
(2)HTTPS设置如下图
(3)Connection设置如下图,端口号设为8888
2.手机端添加代理
注:电脑联网和手机联网在一个局域网,手机和电脑都是连的公司网络
电脑的ip地址
ifconfig
手机端设置-WLAN中给网络设置代理,选中连接的WLAN,对该网络进行编辑,代理中选择手动,主机名填写电脑的ip地址(电脑cmd-ipconfig),端口写刚刚fiddler写的端口8888
3.手机端用浏览器访问http://IP:8888,用电脑的端口和fiddler设置的端口访问安装证书,访问网络,观察fiddler能否成功抓包。这时候一般情况下手机网络能访问,抓包成功。
4.fiddler抓包手机添加代理后连不上网解决办法:
手机设置代理后,无法访问网络了,如断网般。。。研究了半天,和同事一起借助百度的力量解决了。
(1)打开注册表,在HKEY_CURRENT_USER\SOFTWARE\Microsoft\Fiddler2下创建一个DWORD,值设置为80(十进制)
(2)编写FiddlerScript rule,点击Rules > Customize Rules,用ctr+f查找到OnBeforeRequest方法添加一行代码
Inside the OnBeforeRequest handler*, add a new line of code:
if (oSession.host.toLowerCase() == "webserver:8888") oSession.host = "webserver:80";
最终发现还是无法代理Android 9.0版本(开发不愿意修改代码)
原因如下:最新版的Android系统现在应该是不信任自签名的根证书 https://github.com/MegatronKing/HttpCanary/blob/master/zh-CN/README.md
最后使用IOS进行代理
IOS需要信任证书:设置-通用-描述文件与设备管理 。信任fiddler代理证书
2.此外还需要在关于本机-证书信任中心:针对根证书启用完全信任,之后就可成功代理IOS了