『言善信』Fiddler工具 — 16、使用Fiddler抓取移动端App请求
1、抓取Android移动端App请求
前提:
- 因为Fiddler抓包的原理就是通过代理,所以确保被测终端要和安装Fiddler的电脑在同一个局域网中。(也就是同一网段中)
- 确保防火墙允许Fiddler进程可以远程连接。(不行就关闭防火墙)
步骤1:开启Fiddler的远程连接
Fiddler中,Tools菜单 —> Options… —> Connections标签页,勾选Allowremote computers to connect,并记住端口号为8888,等会设置手机代理时需要。设置好后重启Fiddler保证设置生效。
设置如下:

allow remote computers to connect表示“允许远程计算机连接”。意思是代理的移动设备可以连接到Fiddle上,必须勾选。
步骤2:开启Fiddler的HTTPS请求解码
详细说明请看上一篇文章【Fiddler抓取HTTPS请求】,操作结果如下图:

提示:设置完成后最好重启一下Fiddler。
步骤3:查看本地电脑IP地址
在CMD命令行中输入ipconfig查看本地电脑IP地址,如下图:

步骤4:在手机中设置网络代理
移动端手机的网络代理要设置成Fiddler代理。
设置 —> WLAN —> 点击已链接网络的箭头 —> 向下滑动屏幕找到代理,进行配置。
- 选择代理为手动。
- 代理服务器主机名:填写电脑的IP地址(步骤2查询的)
- 代理服务器端口:填写Fiddler设置的代理端口(在步骤1中,
Connections标签页中的配置)
如下图所示:

这时PC端上的Fiddler,就可以抓取到移动端App应用的请求了。
如下图所示:

提示:但此时仅限于抓取App应用中的HTTP请求包。
步骤5:安装证书抓取HTTPS请求
打开手机中的浏览器,输入192.168.3.104:8888,这是你上面在手机中,所设置网络代理Fiddler的服务地址。
如果出现响应页面说明访问代理服务Fiddler成功,就可以安装证书了。

说明:
You can download the EiddlerRoot certificate:表示您可以下载Fiddler根证书。
安装Fiddler根证书操作如下:
打开设置 —> 更多设置 —> 系统安全 —> 加密与凭据 —> 从存储设备安装,选择下载好的FiddlerRoot.cer进行安装。(不同的Android系统版本的位置不一样,按照思路自己去找。)
然后在手机中使用浏览器也好,或者打开短视频App也好,就可以进行HTTP或者HTTPS请求的抓取了。
提示:
从手机本地安装Fiddler证书。
我们可以把电脑中Fiddler安装好的证书导出来,然后传入手机存储中。
- 然后点击设置 —> 安全 —> 从SD卡安装 —> 证书存放的文件夹 —> 找到Fiddler证书。
- 点击Fiddler证书 —> 命名证书(一般为CA) —> 点击确定进行证书安装。
注意:测试完毕,记得关闭代理,否则手机无法上网。
2、抓取IOS移动端App请求
提示:iPhone和iPad都可以抓取。
前提:
- 确保被测终端要和安装Fiddler的电脑在同一个局域网中。(也就是同一网段中)
- 确保防火墙允许Fiddler进程可以远程连接。(不行就关闭防火墙)
步骤1:开启Fiddler的远程连接。
Tools菜单 —> Options… —> Connections标签页,勾选Allowremote computers to connect选项。
步骤2:开启Fiddler的HTTPS请求解码。
步骤3:查看本地电脑IP地址。
步骤4:在手机中设置网络代理。

以上步骤都和Android系统的配置方式相同。
步骤5:安装证书抓取HTTPS请求。
打开手机中的浏览器,输入192.168.3.104:8888,出现如下界面:

点击FiddlerRoot certificate安装证书,出现下面提示框,点击允许。

然后选择安装证书。

继续点击安装:

证书安装完成,会变成绿色已验证,然后点击完成。

步骤6:在IOS系统中设置信任Fiddler证书。
安装成功后,在设置 —> 通用 —> 关于本机 —> 证书信任设置中,信任刚安装的Fiddler证书。

然后在手机中使用浏览器也好,或者打开短视频App也好,就可以进行HTTP或者HTTPS请求的抓取了。
注意:测试完毕,记得关闭代理,否则手机无法上网。
3、总结:
现在进行如上配置也不一定能抓取所有App发送的请求,现在抓取请求越来越困难,有可能是手机系统的原因,也有可能是App的原因,会有很多防止抓取请求设置。
『言善信』Fiddler工具 — 16、使用Fiddler抓取移动端App请求的更多相关文章
- 『言善信』Fiddler工具 — 15、使用Fiddler抓取HTTPS请求
目录 1.Fiddler抓取HTTPS过程 2.拓展:SSL/TLS证书握手原理 3.Fiddler抓取HTTPS原理总结 4.Fiddler抓取HTTPS设置 步骤1:配置证书 步骤2:勾选设置 5 ...
- 『言善信』Fiddler工具 — 1、Fiddler介绍与安装
目录 1.Fiddler简介 2.Fiddler功能 3.Fiddler工作原理 (1)先来了解一下B/S架构 (2)Fiddler工作原理 (3)Fiddler工作原理进阶说明 (4)以Google ...
- 『言善信』Fiddler工具 — 2、HTTP请求内容详解
目录 1.HTTP协议介绍 2.使用Fiddler抓取一个请求 3.НТТP请求报文 (1)НТТP请求报文说明 (2)请求行 (3)请求头(Request Header) (4)请求体 4.НТТР ...
- 『言善信』Fiddler工具 — 3、Fiddler界面布局详解【菜单栏】
目录 (一)Fiddler界面布局介绍 (二)菜单栏 1.File文件菜单: 2.Edit编辑菜单: 3.Rules规则菜单: 4.Tools工具菜单: 5.View视图菜单: 6.Help帮助菜单: ...
- 『言善信』Fiddler工具 — 4、Fiddler面布局详解【工具栏】
目录 (一)工具栏详细介绍 1.第一组工具: 2.第二组工具: 3.第三组工具: 4.第四组工具: (二)工具栏使用说明 1.Fiddler修改代理端口: 2.过滤Tunnel to...443请求链 ...
- 『言善信』Fiddler工具 — 6、Fiddler界面布局详解【命令行和状态栏】
目录 1.命令行 2.状态栏 1.命令行 命令行在Fiddler的左下方的黑色窗口,也叫QuickExec,可以调用 Fiddler的内置命令. 这一系列内置的函数用于筛选和操作会话列表中的sessi ...
- 『言善信』Fiddler工具 — 17、Fiddler常用插件(Willow)
目录 1.Traific Difer插件 2.PDF View插件 3.JavaScript Formatter插件 4.CertMaker for iOS and Android插件 5.Synta ...
- 『言善信』Fiddler工具 — 5、Fiddler界面布局详解【会话列表】
目录 1.会话列表说明 2.会话列表不同颜色的含义 3.会话列表图标说明 4.会话列表应用设置 (1)给Fiddler会话列表增加IP列 (2)添加自定义列 (3)添加完成请求时间 (4)其他操作 1 ...
- 『言善信』Fiddler工具 — 10、Fiddler自动响应器(AutoResponder)的应用
目录 1.图片重定向 2.URL重定向 3.本地调试js文件 4.模拟Mock接口测试 5.综合练习 6.总结 介绍几个Fiddler自动响应器(AutoResponder)应用场景: 场景一:生产环 ...
随机推荐
- Alpha事后分析
设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件的功能主要是让一些基于表单识别的项目(如微软智能表单识别项目)减少在数据生成方面上浪费的 ...
- php中输出函数的区别
isset() .empty()与is_null的区别 1.当变量未定义时,is_null() 和"参数本身"是不允许作为参数判断的,会报Notice警告错误: 2.empty , ...
- 浅谈CRM系统的选型和实施
CRM的本质是最大化利用企业的现有资源来提供客户所需的产品,保证提供给客户最好的服务,帮助销售人员提高客户转化率,储存所有重要的客户信息,帮助企业深入挖掘潜在客户等等. 对于企业来说,即使处于同一行业 ...
- 克鲁斯卡尔(Kruskal)算法
概览 相比于普里姆算法(Prim算法),克鲁斯卡尔算法直接以边为目标去构建最小生成树.从按权值由小到大排好序的边集合{E}中逐个寻找权值最小的边来构建最小生成树,只要构建时,不会形成环路即可保证当边集 ...
- appium等待元素
1.sleep()方法 Thread.sleep(60000)强制等待60s 2.隐式等待implicitlyWait() driver.manage().timeouts().implicitlyW ...
- [c++] 开发问题
语言中的很多细节都是为了应对实际开发中会遇到的问题 当编写程序时,我们使用的定义多数不是自己写的,如sqrt(),是很多年前别人写的,我们只是使用它们 在C++中,对于"别处"定义 ...
- [bug] Junit initializationError
原因 导包错误 解决 先删除 import org.junit.Test; 再导入正确的包 参考 https://blog.csdn.net/javae100/article/details/7978 ...
- 所有的 Unix Like 系统都会内建 vi 文书编辑器。vim 是vi的升级版本,它不仅兼容vi的所有指令 ,而且还有一些新的特性在里面。
所有的 Unix Like 系统都会内建 vi 文书编辑器.vim 是vi的升级版本,它不仅兼容vi的所有指令 ,而且还有一些新的特性在里面. https://blog.csdn.net/carolz ...
- python基础之面向对象(二)(封装、继承、多态)
一.封装 (1)封装是面向对象的一大特点 (2)面向对象编程的第一步--将属性和方法封装到一个抽象的类当中 (3)外界使用类创建对象,然后让对象调用方法 (4)对象方法的细节都被封装在类的内部 1.案 ...
- HDFS 的内存存储是什么?
引言 HDFS 的定位就是一个文件系统,用于存储文件,而 HDFS 对于文件的存储方式有两种: 内存存储 异构存储 内存存储 什么是内存存储? 首先,我们来了解一下到底什么是 "内存存储&q ...