先看看移动设备是怎么去访问网络,如图1所示,能够看到,移动端的数据包是从wifi出去的。android
图1(移动设备访问网络)浏览器
因此咱们能够把本身的电脑开启热点,将手机连上电脑,本机的Fiddler开启代理后,让这些数据经过Fiddler,那Fiddler就能够抓到这些包,而后发给路由器,如图2所示服务器
图2(设置)微信
一、电脑须要安装Fiddler网络
二、测试手机须要支持Wifi测试
三、测试手机与电脑须要同一网络spa
四、所测APP需支持代理3d
注:Iphone、Ipad、WinPhone等支持代理手机均适用代理
电脑可下载一个wifi软件,我这里用的是猎豹wifi,如图3所示,电脑已经开启了wifi热点后server
图3(手机链接电脑的wifi)
Tools –> Options-> Connections,设置代理端口:8888, 勾选 Allow remote computers to connect,即容许远程计算机链接Fiddler,如图4所示
注:8888为默认端口号,可修改,但需注意两点,一是本机空闲端口,二是手机代理设置时要与fiddler的端口一致。
图4(设置fiddler的代理端口)
Tools –> Options-> Https,勾选"Decrypt HTTPS traffic"、"Ignore server certificate errors",如图5所示
图5(设置解密https的网络数据)
设置了上面的步骤后,就能够在 Fiddler看到本身本机无线网卡的IP了(要是没有的话,重启Fiddler,或者能够在cmd中ipconfig找到本身的网卡IP,注:必定要开启本机的wifi热点),如图6所示
图6(在fiddler查看本机的无线网卡IP)
也能够在CMD中查看本机网卡的IP,输入命令:ipconfig,如图7所示
图7(ipconfig查看本机无线网卡IP)
每一个品牌的手机设置wifi的方式可能不同,这里以华为手机为例,如图8所示,将手机链接至PC的wifi
图8(手机链接电脑的wifi)
勾选“显示高级选项”-> 代理 选择“手动” ->输入服务器主机名和服务器端口 ->IP选择“DHCP”->链接,即完成手机端设置代理操做,如图9所示
注:服务器主机名:Fiddler所在电脑IP(即开启wifi后,在fiddler或cmd中看到的无线网卡IP地址)
服务器端口: Fiddler使用的端口(即Options-> Connections中设置的端口号)
图9(手机设置代理)
链接上wifi后,手机打开浏览器输入代理IP+端口号(便是本机无线网卡IP,也是手机链接wifi时所设置的服务器主机名,这里的ip+端口号为192.168.191.1:8888),进入fiddler echo service页面,下载Fiddler的证书,如图10所示,点击FiddlerRoot certificate
图10(下载fiddler证书)
下载完成后,进行安装证书,如图11所示
图11(安装证书)
【注意】:若是打开浏览器碰到相似下面的报错,请打开Fiddler的证书解密模式(如上面的步骤3所示):No root certificate was found. Have you enabled HTTPS traffic decryption in Fiddler yet?
设置完上面6个步骤后,即代表已设置完毕,此时用手机访问应用,就能够看到fiddler抓取到的数据包了,如图十二、13所示
图12(这是运行百度网盘与喜马拉雅FM应用时所抓取的数据包)
图13(这是运行微信应用中的游戏时所抓取的数据包)
以上就是fiddler捕获android数据包时所要作的操做