本文转载自:http://blog.csdn.net/songer_xing/article/details/53841401
备注:本人有这样的一个需求,先记录下,以后再进行整理。
在抓包过程中发现小米5MIUI7系统无法安装Fiddler的证书,百般尝试无果,最后换了一个测试手机,可以安装成功,实现了:Fiddler抓取安卓手机HTTPS请求!!!
在测试过程中,抓包是必不可少的测试分析手段,Fiddler不但能截获PC端数据包, 也可以截获移动端的。特别是你对某些api接口不是很理解或不知道什么功能调了哪些接口,亦或是在测试接口,核对数据、检查移动端有没有重复调用接口等问题,打开fiddler,手机运行下相应功能,一目了然,为测试提供方便。。。。好了,职业病,讲多了,这篇不介绍测试手段,呵呵
下面介绍下如何利用fiddler抓取https请求,使用安卓手机和苹果手机,一起总结了,额。。。还要补充一个方便之处,抓取iOS时直接在Windows PC上进行,不需要非得在MAC
1、先在官网下载fiddler安装包
https://www.telerik.com/download/fiddler
现在最新的是fiddler4,也是本文用到的fiddler,下载之后直接next安装即可
2、安装后,打开界面是这样子的:
默认绿色框是capturing,意思是抓包功能是开启的,如果哪天发现自己不能抓包,检查下这个状态,设置在在File –> Capture Traffic。
3、安装CA证书
1)选择tools-Fildder Options,选择HTTPS选项卡
选中"Decrpt HTTPS traffic",Fiddler就可以截获HTTPS请求
2)选择Connections选项卡,选中"Allow remote computers to connect". 是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来
3)端口号是:8888,一定要重启Fiddler才会生效
4)检查证书是否安装成功,打开Internet选项 ->内容->证书,如下看到有DO_NOT_TRUST_FiddlerRoot字样,恭喜fiddler设置成功了
4、手机配置
1)确认pc端IP,手机要和pc端同网络,假设获取到的pc端的ip是192.168.1.83,设置手机端代理ip与端口,端口是Fiddler的代理端口8888
安卓、ios都是打开设置,找到wifi设置,代理设置为手动
安卓设置如图
ios设置如下
2)浏览器访问网页输入代理IP和端口,如192.168.1.83:8888 ,下载Fiddler的证书,点击下图FiddlerRoot certificate
安卓、ios都如下图,点击安装即可
安装完了证书,可以用手机访问应用,就可以看到截取到的数据包了。。。。
5)fiddler筛选
可以抓包了,问题又来了,好多个请求我只想关注我需要的请求,这时就可以用到fiddler筛选
我日常的设置是这样子的,红色划掉部分,就是要筛选的内容,有多个的时候用分号隔开即可。这样就能满足日常抓包了