在给VIP学员答疑的时候,有很多小伙伴问到能不能抓取到微信小程序数据呢?答案当然是肯定的,通过Fiddler或者Charles这些主流的抓包工具都可以抓得到,在IOS平台抓取微信小程序和https请求都是一样的设置,接下来给大家通过Fiddler演示如何设置在IOS平台端抓取小程序数据包(Charles也是类似)。
一、确保IOS设备与抓包工具所在电脑网络在同一局域网中
一般电脑和移动端设备连接到同一个WiFi热点(路由器),就可以保证是在同一局域网中,这里我们可以通过手机设置->无线局域网->选择对应热点,查看设备IP地址:
如果你想学习接口自动化测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的接口自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386
【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)共计200条视频,包括:1.【接口自动化】目前软件测试的市场行情以及测试人员能力标准。、2.【接口自动化】全面熟练Requests库以及底层方法调用逻辑、3.【接口自动化】接口自动化实战及正则和JsonPath提取器的应用等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337.search-card.all.click
在电脑端通过ping命令去检测下电脑是否能够连接IOS设备:
二、 配置Fiddler代理
(1)打开Fiddler,选择工具栏Tools -> Options -> Connections ,做如下配置
Fiddler Classic listens on post:表示Fiddler监听的端口号,数值可以随意设置,只要保证不和其他软件的端口号冲突即可
Act as system proxy on startup:在Fiddler启动的时候作为系统代理,这样Fiddler能够默认抓取到本地电脑端浏览器的请求,这里我们聚焦在移动端,所以可以把此选项关闭
Allow remote computers to connect:允许远程设备进行连接,必须要勾选,否则抓取不到移动端设备的请求包
(2)选择HTTPS,做以下配置,这一步目的是为了能够抓取到https请求
(3)点击右上角Actions -> 选择Trust Root Certificate,弹窗中全部选择“yes”,这一步是将Fiddler伪证书进行安装
(4)配置完之后记得重启Fiddler
三、 配置IOS设备端代理
(1)打开手机设置->无线局域网->选择对应热点->页面最下方选择配置代理,选择手动,服务器填入电脑端的IP地址,端口填入Fiddler监听的端口号:
(2)此时我们在设备浏览器端访问http的网站:http://testingpai.com,在Fiddler端是可以抓取到http请求的:
但如果是访问https的网站:比如 https://www.baidu.com,会发现:
Fiddler端请求呈灰色显示状态,并且提示Tunnel To(表示建立https链接隧道中)
因为百度网站是https请求,如果要抓取https请求,我们还需要在移动端设备安装证书。
四、IOS设备安装Fiddler伪证书
(1)在IOS设备浏览器上访问 http://192.168.3.192:7878,192.168.3.192为电脑端IP地址,7878为Fiddler监听端口号,所以通过这个地址我们可以访问到Fiddler内置的服务:
(2)点击FiddlerRoot certificate链接,按照提示下载安装证书,进入手机设置 -> 通用 -> 描述文件 ->安装描述文件
(3)进入手机设置 -> 通用 -> 关于本机 -> 证书信任设置,勾选DO_NOT_TRUST_FiddlerRoot
最后任意打开一款小程序,即可抓取到对应的数据包了,enjoy it!