Fiddler——PC上实现手机的抓包(转载 http://www.jianshu.com/p/13f8a81d7c7c)
Fiddler是15年初,在千牛中做超级促销插件时,发现没有root的Android机和没有越狱的iPhone无法修改host,因此没办法测试。为了让我这个磨人的PD也能看到,开发推荐了Fiddler。而且,通过抓取手机上的http/https的请求,也可以帮助测试和开发调试和排查问题。
备注:千牛是淘宝的一个app,超级促销属于一个hybird app,基于千牛的环境开发的。
PC上安装Fiddler之后,可以抓取各种浏览器的请求,通过一些设置可以获取iPhone、安卓手机、windows phone的请求。具体的工作原理我也不多说(哼,绝对不是因为我不懂XD),主要说下如何配置来抓取手机上的请求,以iPhone为例。
准备工作:A.安装Fiddler,可以去官网上下载;B. 手机和电脑在同一个网络里。
1 对Fiddler进行一些设置,配置完后记得要重启Fiddler!
a. 打开Tools > Fiddler Options >HTTPS,capture HTTPS CONNECTs下,勾选Decrypt HTTPS traffic、Ignore server certificate errors
b. 在HTTPS旁边的Connections中,勾选Allow remote computers to connect
2. 获取电脑的IP地址,如图,10.211.55.3就是哒
3. 在iPhone上安装fiddler证书
打开Safari,访问http://电脑ip:8888,我的电脑就是http://10.211.55.3:8888,点“FiddlerRoot certificate”,然后安装证书。
4. 打开iPhone>设置>Wi-Fi,找到跟电脑同一个网络,连接上,并在Http代理处,将电脑的IP地址输入服务器栏,端口设置为8888。
5. 测试下电脑上是否可以抓包成功。任意打开手机上的一个app,或者用safari打开www.baidu.com(最常用的测试网络是否连接的办法XD),看看fiddler上是否捕获。
6. 准备就绪,现在只需要知道测试机的地址,在PC的hosts中绑定,绑定之后,在手机上就可以测试啦!
注意:用完了, 一定要记得把IPhone上的Fiddler代理关闭, 以免IPhone上不了网。
PS:刚工作时,压根找不到host,顺便也附上host的目录好了:计算机>C盘>Windows>System32>drivers>etc>hosts。我会发送一个快捷方式到桌面,这样每次改起来很方便哟,大家可以试试这么做。
另另,之前遇到过小伙伴的host修改不成功,提示权限不足。后来也找到了解决方案,这里共享下:hosts—右键 属性—编辑—选择user—设置user权限。
作者:幺九
链接:http://www.jianshu.com/p/13f8a81d7c7c
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。