作为测试或开发经常需要抓取手机App的HTTP/HTTPS的数据包,通过查看App发出的HTTP请求和响应数据来协助开发去修复bug。对于测试而言,通过抓包+分析,去定位bug的前后端归属问题以及定位bug产生的原因等都是非常频繁的。而App端的抓包设置繁琐,而且经常设置好了也难以抓到有用的数据包,因此就写了一篇非常详细的图文文档来帮助大家去抓取真机上App端数据包,让抓包变得更加easy~~
准备工具:Fiddler抓包软件,Android手机一台(本文章以vivo X9为例)。
一、Fiddler配置
下载安装Fiddler工具后,打开Fiddler工具,进入菜单Tools,配置Fiddler代理;找到Connections--勾选Allow remote computers to connect ,监听端口默认为8888即可。具体操作如下图:
图一:
图二:
配置好后,点击OK,在这里代理就设置完成。配置完成后记得一定要重启Fiddler软件,重启才能让配置生效。
二、Android配置
前提:确保手机连接wifi和安装Fiddler电脑是同一个局域网。
手机端配置代理:选择手机连接的wifi--进入设置--打开手动代理--分别填入代理服务器主机名和代理端口---返回上一级界面。
1、如何获取服务器主机代理:
在Fiddler的Online上可以看到主机代理IP地址,这个值就是填入代理服务器主机名的值。
2、如何获取代理端口:
代理端口就是第一步Fiddler配置中的监听端口,比如我上面配置的Fiddler端口为8888,那么这里填入的代理端口也是8888,如果上面一步中端口有更改,则保证你输入的值与配置的一致就行。
所以手机端的代理设计界面如下图所示:
图一:
图二:
三、抓包
1、抓取HTTP数据包
到这里设置完成,我们打开浏览器,访问我们的物业项目后台管理系统(http://wy.lemonban.com:3000/user.html),让我们看看我们都抓到什么东东。首页的HTTP数据包已经获取到了,具体内容如下:
2、抓取HTTPS数据包
方式一:安装证书,再抓取HTTPS的数据包
-
1、打开浏览器,访问:http://ip:port。如:http://192.168.1.250:8888/
- 其中ip填入你第二步中获取的代理服务器主机名
- port填入你第二步中获取的代理端口
-
2、根据提示信息完成证书的安装,具体操作如下图所示:
-
图一:访问网址,下载证书
图二:下载证书
-
-
图三:安装证书
图四:安装证书
图五:安装证书
案例:到这里设置完成,我们打开浏览器,访问百度(https://www.baidu.com),首页的HTTPS数据包已经获取到了,具体内容如下:
- 方式二:VirtualXposed框架+JustTrustMe模块解决
通过上面的配置确实是可以抓到HTTP、HTTPS的数据了,但是当我们去抓取App(小柠檬刷题)的数据时,发现响应部分的数据基本没有信息。具体显示如下图:
因此给大家找到了完美的解决方案,可以通过VirtualXposed框架+JustTrustMe模块解决。具体操作操作请参考:http://testingpai.com/article/1675747340404。配置后,我们再来看一下App(小柠檬刷题)的抓包信息,具体如下图:
最后的最后,为了抓包后,不影响你后续手机上网,记得一样要把网络的手动代理关闭哈~~
标签:Fiddler,真机,App,端口,代理,数据包,抓包 From: https://www.cnblogs.com/xiaoxiao-wu/p/17171816.html