你好,我是测试小牛。
之前写过一篇关于fiddler抓包app接口定位分析bug的文章
如何使用fiddler抓包安卓,IOS接口,并定位分析bug?
然后评论区有很多同学反馈fiddler抓包失败,说部分安卓,ios系统不支持。那么有什么好的解决方案呢?
最好的方式就是换一个更牛逼的工具,推荐一款我现在在公司经常用的抓包工具whistlejs。
说一下whistlejs的优点:
1.跨平台,它是基于浏览器的,可以在mac或者windows上使用,而且配置简单。
2.集成了host管理功能,我们不需要在像fiddler那样,需要绑host的时候,专门找个工具去做这件事。
3.可以基于域名的代理,我们可以像绑host的ip那样,绑定访问的域名
当然它也是有缺点的就是要配置运行依赖环境,比如java的开源工具需要jdk,那么whistlejs需要node。
下面开始介绍如何安装使用。
1、安装node
可以去https://nodejs.org/ 官网下载,安装后使用:node -v 检查下是否安装成功
2、安装whistlejs
进入dos使用命令:
npm install -g whistle
安装后使用命令:w2 help 检查是否安装成功
3、启动whistle
使用命令:w2 start
4、chrome浏览器代理设置
打开地址:https://chrome.google.com/webstore/detail/whistle-%E7%AC%AC%E4%B8%89%E6%96%B9%E6%8F%92%E4%BB%B6/ibhpjiafjijjpofblhamncmhlicfcofm/related
给你的浏览器加上该插件。
5、插件安装成功,就可以打开whistle的页面了 http://local.whistlejs.com
6、手机代理
在第三步的启动后,会打印出代理的ip及端口: http://192.168.191.1:8899/
手机绑定这个ip及端口即可。
7、https抓取
点击工具栏的HTTPS,会弹出如下窗口
此码为证书下载码,手机配好代理后,扫此码即可安装证书。
最后勾选上配置项即可抓取https请求
需要注意的是,在您抓取https时,可能会导致本地的https网站无法打开,您可以将上面红框中的选项不勾选即可。
另外,使用的时候可以注意https前面的图标,如果是锁,那就说明目前状态不可抓https,如果是勾即是开启状态。
8、host绑定
我们点击最左侧的rules选项
打开如图:
在这个里面就可以绑定host或者域名啥的,包括重定向文件等等,填好后使用万能键ctrl+s即可生效。
我们回到network,抓到请求后,查看此项就可知道是否绑定成功:
以上就是whistlejs对安卓,ios进行抓包的使用操作说明,亲测非常好用,比fiddler好用多了,大家可以自己去安装试试。
具体参考官方说明:
https://www.npmjs.com/package/whistle