一、为什么要使用抓包工具?

1、看过太多测试同学,安卓端测试出现的问题,归属就是安卓端,ios端出现的问题归属就是ios端,这样子不仅bug被拒绝率很高,也不方便别人认可你的能力,使用简单的抓包工具,可以简单分析前后端问题:比如,前端传参是否正确;后台返回是否正常;不该调用接口的地方是否有调用;该调用的地方是否有调用;传参及参数的返回是否合规安全;等等吧,并不是说前端展示出来的文案,就是前端写的,也可能是后台接口返回后前端直接呈现的

2、协助做接口测试。没有接口文档的情况下,先抓包,再调用接口测试

3、协助做接口自动化测试。看下网站或app内真实的传参情况,模拟传参去做接口自动化测试


等等吧

二、fiddler的安装

下载并安装fiddler安装包,官方链接:https://www.telerik.com/fiddler

三、fiddler的配置-抓包准备阶段

3.1 证书配置,点击Tools->Options->HTTPS

打开Fiddler菜单项Tools->TelerikFiddler Options->HTTPS,
勾选CaptureHTTPS CONNECTs–捕获 HTTPS 连接,
勾选Decrypt HTTPS traffic和Ignore servercertificate errors两项–HTTPS 请求解密和忽略服务器端验证错误
,点击OK(首次点击会弹出是否信任fiddler证书和安全提示,直接点击yes就行)

当然抓取https是需要先安装并信任证书的


信任证书


设置端口号,并保存,重启fiddler

3.2 配置fiddler允许远程连接抓包
点击Tools->TelerikFiddler Options->Connections,勾选allow remote computers to connect–允许远程电脑连接,默认监听端口为8888,端口号也可以改成其他

3.3 移动端(手机或pad)代理设置
1、确保你连的wifi和你的电脑在同一局域网,手机点击:设置-WiFi-高级,代理选择手动,主机名就是fiddler的电脑ip地址,端口号,就是fiddler的端口号ttps://img-blog.csdnimg.cn/c96ed7aa6e5943b298e511d62d17595e.png)

2、打开手机浏览器,输入:ip:端口号,回车,浏览器会自动带上http://去请求,即:http://ip:端口号
ip 可以在这里看:

3、前往之后会跳转到证书下载页,点击FiddlerRootcertificate下载证书

4、点击下载之后,安装证书,证书名字最好不要写默认,预防其他人使用你手机会把你的证书覆盖

5、安卓端直接安装,ios端证书安装后需要信任证书:设置–通用–关于本机–证书信任设置–(对应证书的开关)
安卓7.0.0以上版本 证书不太好安装,可以参考一下方法:
方法一:

方法二:
使用wifi的高级设置进行安装。以华为EMUI8.0.0(Android8.0.0)为例:设置-》无线和网络-》WLAN-》更多-》高级WLAN设置-》安装证书。

以上总结:

四、fiddler主要功能的使用

4.1 Fiddler 抓包 显示server ip

显示出现serverIp方便看当前是否走到了测试环境,是否是开发部署的IP

1、快捷键Ctrl+R ,打开 Customize Rules.js文件, 或者在工具栏Rules–》Customize Rules…点击打开

2、查找static function Main() 这个函数,在FiddlerObject.StatusText = " CustomRules.js was loaded at: " + today; 这行下面新增一行:FiddlerObject.UI.lvSessions.AddBoundColumn(“ServerIP”, 120, “X-HostIP”);保存重启 Fiddler ,则fiddler可以看到server ip一栏

4.2 返回报文乱码处理
有时候我们看到Response中的HTML是乱码的, 这是因为HTML被压缩了, 我们可以通过两种方法去解压缩。

  1. 点击Response Raw上方的"Response is encoded any may need to be decoded before inspection. click here to transform"
  2. 选中工具栏中的"Decode"。 这样会自动解压缩


4.3 fiddler过滤域名
有时候我们只想抓取自己想要的请求
我们可以在Filers面板中勾选“Use Filters”
1.Hosts第一项默认“No zone filter”
2.Hosts第二项选择“Show Only The Following Hosts”只显示过滤到的域名,多个域名使用”;“分号分割

4.4 查看响应时间
在class Handlers 最前面(也可以其他位置,最前面仅仅是不容易被{}弄乱)添加以下代码:

// 显示每行请求的发起时间:时分秒毫秒
public static BindUIColumn("BeginTime", 80)
function BeginTimingCol(oS: Session){   return oS.Timers.ClientDoneRequest.ToString("HH:mm:ss.fff");
}// 显示每行请求的响应时间:时分秒毫秒
public static BindUIColumn("EndTime", 80)
function EndTimingCol(oS: Session){     return oS.Timers.ServerDoneResponse.ToString("HH:mm:ss.fff");
}// 显示每行请求的服务端耗时时间
public static BindUIColumn("Time Taken", 80)
function CalcTimingCol(oS: Session){  var sResult = "0";                  if ((oS.Timers.ServerDoneResponse > oS.Timers.ClientDoneRequest)) {  sResult = (oS.Timers.ServerDoneResponse - oS.Timers.ClientDoneRequest).TotalMilliseconds.ToString("N0");}  return sResult + "ms";
}


在保存该代码,重新打开fiddler,有请求后即可看到接口耗时,可以按自己的需求把此参数往前移动,移动到方便查看的地方


4.5 拦截修改返回,模拟http响应
1.打开Fiddler 找到AutoResponde
2.选择Enable rules 和Unmatched requests passthrough–求匹配不到的话,就会请求原地址,Enable Latenc可以设置延时
3.选中左侧的http请求,然后点击Add Rule
4.在下面的Rule Editor 下拉选择要模拟的响应类型,200、404、502等(也可以自己创建Response,选中Create New Response…,如果是要替换掉某些页面文件,选中Find a file). 最后点击Save 保存下。

基本规则:
前缀为“EXACT:”表示完全匹配(大小写敏感)
无前缀表示基本搜索,表示搜索到字符串就匹配
前缀为“NOT:”表示发现就不匹配
前缀为“REGEX:”表示使用正则表达式匹配
前缀为“REGEX:(?insx)”表示匹配方式其中:
i表示不区分大小写
n表示指定的唯一有效的捕获是显式命名或编号的形式
s表示单行模式
x表示空格说明的
举例:regex:.+getGeetestCaptcha.do*

拦截成功后的请求,接口会有颜色标识

抓包工具 fiddler 的安装和使用详解相关推荐

  1. 抓包工具Fiddler下载安装

    Fiddler简介 一段抓包工具. 下载与安装 下载 官网下载地址 安装 双击下载好的exe文件 修改安装路径 安装完成 点击运行 基本配置 点击Tools->Options->HTTPS ...

  2. 手机抓包工具fiddler的安装教程

    抓包工具可能是一个比较常见的应用工具,在这里总结一下安装的整个流程,以便需要时可以快速的设置和安装好. 第一步: 抓包工具下载: fiddler工具下载网址:http://www.telerik.co ...

  3. 抓包工具- fiddler的安装

    一.fidder连接手机安装 1.设置抓取https协议的包(如果不需要抓https协议的包,可以跳过此处) 因为一般移动端都是用http是协议,所以需要设置下抓取https协议的包 打开fidder ...

  4. MacOS 抓包工具Fiddler Everywhere:安装与使用

    MacOS 抓包工具Fiddler Everywhere:安装与使用目录 1. Fiddler Everywhere 安装 2. Fiddler Everywhere配置 2.1 在本机上抓取数据 2 ...

  5. 抓包工具Fiddler:在雷电安卓虚拟机上安装配置Fiddler

    用雷电安卓模拟器设置抓包工具. 如何安装 安装包地址 安装说明地址 特别说明 fiddler里配置后需要在wifi无线里设置: Proxy hostname:自己电脑的ip: Proxy port:设 ...

  6. 抓包工具 - Fiddler(详细介绍)

    原文:抓包工具 - Fiddler(详细介绍) Fiddler的详细介绍 一.Fiddler与其他抓包工具的区别 1.Firebug虽然可以抓包,但是对于分析http请求的详细信息,不够强大.模拟ht ...

  7. 抓包工具fiddler使用与理论的理解

    抓包工具fiddler使用与理论的理解 抓包工具是运行在本地,客户端与服务器之间的一层,可以很好的抓取两者交互的信息 关于http协议 :http是一个简单的请求-响应协议,它通常运行在TCP之上 请 ...

  8. 抓包工具Fiddler抓取手机包和修改接口数据

    抓包工具Fiddler抓取手机包和修改接口数据 安装成功界面 点击Tools->Options 弹出该页面 Allow remote-勾选上,意思为允许远程计算机连接,端口随意设置(默认8888 ...

  9. api 数据 App 抓包工具 fiddler

    from   :  http://www.heyuan110.com/2015/06/17/App抓包工具fiddler/ App抓包工具fiddler Charles fiddler 抓包 确保安装 ...

最新文章

  1. UICollectionView的headerView、footerView使用以及与UITableView加载headerView、footerView的区别...
  2. 计算机专业数控,数控专业的月薪是多少 数控专业能干什么
  3. win7怎么修改oracle登陆密码,win7账户密码如何修改|win7修改账户密码的详细步骤...
  4. P4166 [SCOI2007]最大土地面积
  5. WIF基本原理(2)基于声明的标识模型
  6. 集成平台集群任务动态分派
  7. QT事件事件之一:Qt中的事件处理与传递
  8. Exchange Server 2013系列五:虚拟化部署
  9. VMware Workstation Pro 无法在Windows上运行的解决方法
  10. (笔试题)被3和5整除的数的和
  11. Bash and a Tough Math Puzzle CodeForces 914D 线段树+gcd数论
  12. 传智播客 java javaEE 20G全套视频教程(下载种子)
  13. 01 安装STEP7软件和USB驱动
  14. excel比对两列数据
  15. xml文件简介(上)
  16. 风变编程课后习题答案
  17. STM8L101x驱动ADS1256
  18. AdGuard添加规则方法
  19. 千道Java面试真题整理系列:MySQL灵魂五十问,在遇面试也不怕!
  20. 哈希(Hashing)

热门文章

  1. CSDN修改昵称和博客标题
  2. Debian 源库位置
  3. 车辆跟踪设备中关于LED驱动IC的原理
  4. Android DrawerLayout抽屉效果
  5. 扫地机器人 基于stm32f103ze扫地机器人程序
  6. 字符串大小写转换器(html+css+js)
  7. html设置背景图片高度自适应屏幕,CSS设置背景图宽度100%,高度自适应
  8. python爬取指定关键字图片
  9. Kubernetes 之上的架构应用
  10. 百宝箱:几乎所有项目都会用到的Portlet开发