介绍几个Fiddler自动响应器(AutoResponder)应用场景:

  • 场景一:生产环境的请求重定向到本地文件,验证结果。

    例如:某网站或者系统修改了问题,但尚未更新到生产环境,可重定向到本地修改后的文件进行验证,这样能够避免更新到生产环境后才发现问题。

  • 场景二:修改响应结果,模拟接口测试。也可以绕过前端页面的JS验证,测试接口是否存在问题。

    例如:当我们进行登陆操作的时候,如果手机好输入的不规范,前端的校验就进行拦截了。

  • 场景三:链接某些不安全的wifi时,钓鱼者可能会利用篡改某些访问的JS文件弹出窗口或链接,重定向到不安全的网站。友情提醒:尽量不要使用不安全的wifi上网。

1、图片重定向

http://test.lemonban.com/ningmengban/app/login/login.html登陆页面为例,将主页图片重定向到本地图片。

步骤1:获取要截获的请求

打开Fiddler,进行访问网址,抓取到主页图片的请求,并将其拖动到AutoResponder窗口中。

或者在AutoResponder窗口点击Add Rule添加一个拦截规则。

步骤2:编辑拦截规则

Rule Editor第一个下拉框可以设置重定向请求的规则,将请求拖动到该窗口,会自动出现。

如果是点击Add Rule添加拦截规则,需要手动输入。

第二个下拉框可设置重定向内容。

点击改下拉框,选择最后一项Find a file…,然后选择一张本地图片,点击右侧Save按钮。

步骤3:重新访问主页链接

重新访问首页链接,发现图片已经替换。

若发现没有替换,可能是浏览器缓存问题,可以去缓存刷新或者清空缓存后再次访问即可。(CRTL+F5)

提示:请求一个链接,返回本地的html页面也是同样的原理。

2、URL重定向

以访问http://test.lemonban.com/ningmengban/app/login/login.html首页为例,设置访问首页时,重定向到京东首页。

设置规则如下:

步骤1:点击Add Rule添加一个新规则。

步骤2:修改新增规则的拦截地址和重定向地址。

添加EXACT:后,完全匹配的请求地址才会触发重定向。

步骤3:访问首页链接,进行了地址的重定向。

输入的是首页地址,返回来的是京东首页。

3、本地调试js文件

以访问http://test.lemonban.com/ningmengban/app/login/login.html首页为例,设置访问首页时,调用本地的js文件,效果有页面有弹框弹出。

步骤1:访问首页,用Fiddler抓如请求首页的链接。

步骤2:任选一个js文件的请求,我们把内容复制下来保存到本地1.js文件中。

步骤3:在本地1.js文件中最上方,添加一条代码alert(1)

步骤4:设置规则如下:

  • 把该请求拖拽到AutoResponder面板的规则栏中。
  • 编辑规则,让该请求访问本地的1.js文件

步骤5:再次进行首页访问,查看结果。

结果页面弹出了alert窗口,说明请求最终访问了本地的1.js文件。

4、模拟Mock接口测试

当我们需要测试一个接口,可该接口还没有被开发人员实现,这个时候我们就可以通过Fiddler进行Mock模拟测试。

步骤1:根据接口文档,把该接口的请求,添加到拦截规则中。

步骤2:根据接口文档对该接口的返回描述,自行编写返回数据。

  • 规则上右键选择Edit Response...

  • 然后按照给是返回数据,如下:
    HTTP/1.1 200 OK
    Server: nginx/1.4.2
    Date: Sat, 23 Jan 2021 18:11:41 GMT
    Content-Type: application/json;charset=UTF-8
    Transfer-Encoding: chunked
    Connection: keep-alive 53
    {"success":false,"message":"该手机号没有注册","content":null,"object":null}
  • 然后保存规则,重新访问即可。

5、综合练习

简单模拟网站钓鱼的原理:

就是当我们访问一个网站的时候,会产出一些提示框,我们操作后,会跳入对应的钓鱼网站,这些网站就非常的危险了,我们一定要谨慎操作(直接离开)。

实现思路:

  1. 访问http://test.lemonban.com/ningmengban/app/login/login.html首页为例。
  2. 保存任意一个js请求的文件到本地(同上面调用本地js的练习)
  3. 修改本地js文件,添加如下代码
    # 弹出一个提示框,点击是访问京东页面,点击否访问淘宝页面
    var flag = confirm("恭喜你中奖了,是否前往领!!!")
    if(flag){
    window.location.href ="http://www.jd.com"
    }else{
    window.location.href ="http://www.taobao.com"
    }
  4. 配置Fiddler自动响应器规则。
  5. 进行重新访问,查看效果。

提示:这个例子就是开阔一下思路,实现起来很方便。大家可以自己动动手实现一下。

6、总结

  • 特别说明:如果浏览器用的是Firefox,记得先清一下临时文件缓存,因为Firefox是真正的缓存,当判断文件的缓存还未过期时,就不会再发请求出来,Fiddler就获取不到了。
  • 总结:我们可以通过以上方法修改本地文件,进行测试。

    自动重定向功能是Fiddler最实用的功能,这里的Rule可以自由地设定,可以使用搜索(默认)、精确匹配(EXACT)、正则表达式匹 配(REGEX)。

    处理方式可以选择使用文件,也可以选择合适的时间暂停数据流(bpu、bpafter),人工干预。通过以上几个示例,我们演示了怎样将HTTP请求重定向到本地的文件,进行web调试。

    这种调试方式不需要发布到线上再验证,避免了修改不成功、对用户造成影响的风险,而且不需要搭建复杂的开发服务器等开发环境,非常适合快速web调试。

参考:

『言善信』Fiddler工具 — 10、Fiddler自动响应器(AutoResponder)的应用的更多相关文章

  1. 『言善信』Fiddler工具 — 2、HTTP请求内容详解

    目录 1.HTTP协议介绍 2.使用Fiddler抓取一个请求 3.НТТP请求报文 (1)НТТP请求报文说明 (2)请求行 (3)请求头(Request Header) (4)请求体 4.НТТР ...

  2. 『言善信』Fiddler工具 — 1、Fiddler介绍与安装

    目录 1.Fiddler简介 2.Fiddler功能 3.Fiddler工作原理 (1)先来了解一下B/S架构 (2)Fiddler工作原理 (3)Fiddler工作原理进阶说明 (4)以Google ...

  3. 『言善信』Fiddler工具 — 3、Fiddler界面布局详解【菜单栏】

    目录 (一)Fiddler界面布局介绍 (二)菜单栏 1.File文件菜单: 2.Edit编辑菜单: 3.Rules规则菜单: 4.Tools工具菜单: 5.View视图菜单: 6.Help帮助菜单: ...

  4. 『言善信』Fiddler工具 — 4、Fiddler面布局详解【工具栏】

    目录 (一)工具栏详细介绍 1.第一组工具: 2.第二组工具: 3.第三组工具: 4.第四组工具: (二)工具栏使用说明 1.Fiddler修改代理端口: 2.过滤Tunnel to...443请求链 ...

  5. 『言善信』Fiddler工具 — 6、Fiddler界面布局详解【命令行和状态栏】

    目录 1.命令行 2.状态栏 1.命令行 命令行在Fiddler的左下方的黑色窗口,也叫QuickExec,可以调用 Fiddler的内置命令. 这一系列内置的函数用于筛选和操作会话列表中的sessi ...

  6. 『言善信』Fiddler工具 — 15、使用Fiddler抓取HTTPS请求

    目录 1.Fiddler抓取HTTPS过程 2.拓展:SSL/TLS证书握手原理 3.Fiddler抓取HTTPS原理总结 4.Fiddler抓取HTTPS设置 步骤1:配置证书 步骤2:勾选设置 5 ...

  7. 『言善信』Fiddler工具 — 9、Fiddler自动响应器(AutoResponder)详解

    目录 1.AutoResponder介绍 2.AutoResponder界面说明 (1)选项: (2)按钮: (3)Rule Editor(规则编辑): (4)test(测试): (5)规则框: 1. ...

  8. 『政善治』Postman工具 — 10、Postman中对Cookie的操作

    目录 1.往常的Cookie处理方式 2.Postman中的Cookie管理机制 3.自定义Cookie管理内容 在接口测试中,某些接口的调用,需要带入已有Cookie,比如有些接口需要登陆后才能访问 ...

  9. 『言善信』Fiddler工具 — 11、Fiddler中Composer功能详解

    目录 1.Composer功能介绍 2.Composer界面说明 3.使用方式 (1)自定义Request请求 (2)Composer重复发送请求 (3)Composer篡改请求数据 1.Compos ...

随机推荐

  1. (翻译)OpenDocument and Open XML security (OpenOffice.org and MS Office 2007)

    标题:Open Document 和 Open XML安全性(OpenOffice.org and MS Office 2007) 摘要,OpenDocument 和 Open XML 都是 Offi ...

  2. 记一次 .NET 医院CIS系统 内存溢出分析

    一:背景 1. 讲故事 前几天有位朋友加wx求助说他的程序最近总是出现内存溢出,很崩溃,如下图: 和这位朋友聊下来,发现他也是搞医疗的,哈哈,.NET 在医疗方面还是很有市场的,不过对于内存方面出的问 ...

  3. 从几道题目带你深入理解Event Loop_宏队列_微队列

    目录 深入探究JavaScript的Event Loop Event Loop的结构 回调队列(callbacks queue)的分类 Event Loop的执行顺序 通过题目来深入 深入探究Java ...

  4. CRM帮助B2B企业持续改善战略决策「下篇」

    尽管数据早已深入人心,但依然有相当比率的B2B企业在管理和战略决策时依赖直觉而不是客户数据.不停变化的B2B市场表明了以客户为中心的趋向和格局,CRM客户管理系统能够协助您更好的使用客户数据并最大限度 ...

  5. Git 系列教程(12)- 分支的新建与合并

    实际工作场景 可能会遇到的工作流 开发某个网站 为实现某个新的用户需求,创建一个分支 在这个分支上开展新工作 正在此时,你突然接到一个电话说有个很严重的问题需要紧急修补,你将按照如下方式来处理: 切换 ...

  6. copy和deep.copy

    https://blog.csdn.net/qq_32907349/article/details/52190796 加上crossin公众号上的可变对象与不可变对象 a=[1,2,3,[4]] b= ...

  7. java基础——if和Swith的应用

    顺序结构 java的基本结构就是顺序结构,除非特别说明,否则就按照一句一句的执行 它是任何一个算法都离不开的基本算法结构 选择结构 if单选择 if双选择 if多选择 嵌套的if结构 switch多选 ...

  8. [刷题] 1022 D进制的A+B (20分)

    思路 设t = A + B,将每一次t % d的结果保存在int类型的数组s中 然后将t / d,直到 t 等于 0为止 此时s中保存的就是 t 在 D 进制下每一位的结果的倒序 最后倒序输出s数组 ...

  9. 【转载】Linux踢出其他正在SSH登陆用户

    Linux踢出其他正在SSH登陆用户     在一些生产平台或者做安全审计的时候往往看到一大堆的用户SSH连接到同一台服务器,或者连接后没有正常关闭进程还驻留在系统内.限制SSH连接数与手动断开空闲连 ...

  10. CentOS Linux搭建独立SVN Server全套流程(修改svn仓库地址、服务启动等)

    CentOS Linux搭建独立SVN Server全套流程(修改svn仓库地址.服务启动等) 原 一事能狂便少年 发布于 2016/12/27 11:16 字数 1113 阅读 1.3K  收藏 0 ...