一.对PC(笔记本)参数进行配置
1. 配置fiddler允许监听到https(fiddler默认只抓取http格式的)
打开Fiddler菜单项Tools->Options->HTTPS,勾选CaptureHTTPS CONNECTs,点击Actions,勾选Decrypt HTTPS traw ic和Ignore servercertificate errors两项,点击OK(首次点击会弹出是否信任fiddler证书和安全提示,直接点击yes就行),点击Actions中的Trust Root Certificate,一直确定就好。见图:
2.配置fiddler允许远程连接
上一步窗口中点击Tools->Options->Connections,勾选allow remote computers toconnect,默认监听端口为8888(下图Fiddler listens on port就是端口号),若端口被占用可以设置成其他的,配置好后要重新启动fiddler,如下图:
点击完成之后,PC端配置完成,接下来开始配置手机端,以安卓为例,iOS方法同安卓;
二.对手机端(模拟器)进行参数配置
1.准备工作
电脑IP地址:首先要保证手机和电脑都处于同一个网络;然后要知道电脑的ip地址(当然这个电脑是安装fiddler的电脑),电脑ip地址可通过cmd,输入ipconfig查询,或网络共享中ipv4找到,我的是192.168.103.53。
fiddler的端口号:在fiddler 工具中点击Tools->TelerikFiddler Options->Connections,port中值就是端口号,一般默认为8888;也就是上面刚刚设置的端口号。
设置全局代理:如果是连接的模拟器,直接使用下面的adb命令就可以。如果是手机就安装postern全局代理工具(工具使用方法自行百度)。至于为什么要设置全局代理呢?看下面的图,不设置的话。最后操作完了就只能抓到模拟器的数据,模拟器里面的APP的数据就抓不到了。
adb shell settings put global http_proxy 本机ip:8888
adb shell settings put global http_proxy :0 #取消全局代理
2.手机端(模拟器)安装证书
前面设置了全局代理的,到这里就可以进行抓包了。可以先打开fiddler,再打开手机(模拟器)中的APP进行操作。看看是不是能够抓取到内容了。我这里实验了是可以的。
注意:设置了fiddler代理的话,必须先打开fiddler代理工具,然后在手机中才可以连接到网络!
3.更改手机无线网的代理
这里还是介绍一下,没有设置全局代理是怎么做的吧!
手机系统设置-无线网
点击高级,代理选择手动,主机名就是fiddler的电脑ip地址,端口号,就是fiddler的端口号,与浏览器中ip:端口号保持一致,点击确定即可
操作手机,电脑fiddler中会显示一些http信息,成功;
4.抓包成功!
三、常见问题
1.只抓取到模拟器的信息,里面的APP信息抓不到。
解决办法:上面的设置全局代理
2.模拟器一直出现安全证书有问题。
一直点击到消失。如果不行直接把fiddler断掉,不连网就不检查了嘛。然后进行下面的操作。