【这里以不能在手机上抓到包为例】
前提条件:
1、已设置Fiddler的代理端口
Tools –> Options-> Connections,设置代理端口:8888, 勾选 Allow remote computers to connect,即允许远程计算机连接Fiddler,
注:8888为默认端口号,可修改,但需注意两点,一是本机空闲端口,二是手机代理设置时要与fiddler的端口一致。
2、已设置解密HTTPS的网络数据
Tools –> Options-> Https,勾选"Decrypt HTTPS traffic"、"Ignore server certificate errors。
3、 手机与电脑在同一局域网下
已勾选“显示高级选项”-> 代理 选择“手动” ->输入服务器主机名和服务器端口 ->IP选择“DHCP”->连接,即完成手机端设置代理操作,如下图所示:
注:服务器主机名:Fiddler所在电脑IP(即开启wifi后,在fiddler或cmd中看到的无线网卡IP地址)
服务器端口: Fiddler使用的端口(即Options-> Connections中设置的端口号)
4、手机已下载并安装Fiddler证书
把WiFi设置为手动代理后,手机打开浏览器输入代理IP+端口号(即电脑的IP,也是手机设置代理时所设置的服务器主机名,这里的ip+端口号为192.168.XXX.XXX:8888),在手机浏览器中输入192.168.XXX.XXX:8888,进入fiddler echo service页面,下载Fiddler的证书,点击FiddlerRoot certificate,下载成功后安装,每个手机的安装步骤有所不同,请自行百度。
至此
大部分解决方案都会说:设置完上面步骤后,即表明已设置完毕,此时用手机访问应用,就可以看到fiddler抓取到的数据包了
【可是我依然不能抓到包,,此刻的心情五味杂陈。。】
果然是冷静下来才能找到问题的根源,突然想到我的fiddler是不是设置了只抓某个地址的包,果断检查filters,果然勾选着,果然设置了只抓某个地址的包,,,嗯,总是被自己坑。。
-------------------------------续坑--------------------------
【这里是电脑不能抓到包】
问题:以小程序为例,有的小程序直接打不开提示:请求失败。
有的请求在fiddler中显示tunnel to 443
前提条件(Windows系统):
1、已设置Fiddler的代理端口
Tools –> Options-> Connections,设置代理端口:8888, 勾选 Allow remote computers to connect,即允许远程计算机连接Fiddler,
注:8888为默认端口号,可修改,但需注意两点,一是本机空闲端口,二是手机代理设置时要与fiddler的端口一致。
2、已设置解密HTTPS的网络数据
Tools –> Options-> Https,勾选"Decrypt HTTPS traffic"、"Ignore server certificate errors。
解决方案:
经一番波折后发现,是因为未安装证书。
在Tools –> Options-> Https中点击Actions->Trust Root Certificate,进行安装证书,重启fiddler,然后再抓包就可以看到内容 了。
(如果是要使用浏览器,记得在浏览器中设置代理,这里就不多说了)