1.简介

在开发或者测试的过程中,由于项目环境比较多,往往需要来来回回地反复切换,那么如何优雅地切换呢?宏哥今天介绍几种方法供小伙伴或者童鞋们进行参考。

2.实际工作场景

2.1问题场景

(1)已发布线上APP出现接口错误,如何测试线上APP访问本地请求?

(2)已发布线上H5页面,静态资源或js调试,如何映射本地js?

2.2一般解决方案

猜测(一般明显问题)、找到原发布包,修改请求资源url重新打包测试。需要前后端协调配合,耗时费力。

2.3聪明人解决方案

fiddler映射响应:

通过fidder拦截,将需要加载的资源映射到本地开发环境,而无需切换测试版APP

例如线上资源:http://online.com/api/page

映射加载本地资源:http://127.0.0.1/api/page

3.切换实战

3.1插件(Stave插件)

Stave是一个Fiddler扩展插件,让Fiddler能将URL映射到本地目录,实现批量文件自动响应。

Fiddler自带的AutoResponder每条自动响应规则只能对应一个本地文件, 在文件数目较多的时候,使用起来很不方便,往往需要部署到本地web服务,有了Stave插件(扩展),一个URL匹配可以对应一个本地目录,URL规则也支持通配符,前端调试方便多了。

除支持URL映射到目录之外,还支持URL到URL的替换。

Stave扩展并不影响原本的AutoResponder功能,两者可以共同起作用。具体操作步骤如下:

1.下载Stave插件,这个可费了大劲了,首先宏哥得FQ访问这个插件的官网,可以访问官网了,结果一下载,才发现已经不维护了,下载链接已经失效了,然后在csdn上找到了一个,结果还要积分,充值后用价格不菲的积分下载了,完全不能用,后来才发现后边有评论已经说了不好用,怪我咯没有看请就着急地下载了,果然是心急吃不了热豆腐,后来辗转查资料各种找,终于下载了一款可以用的。如果你也发现下载特别费劲,那就关注宏哥的公众号“北京宏哥”后,发送“stave”关键字,来获取下载此插件安装包的方式吧!如下图所示:

2.双击安装包后,出现安装完成的,如下图所示:

3.重启Fiddler后,在右边的选项卡中没有看到这个插件,宏哥然后点击上图中的“Show detail”后,查看插件的安装目录,如下图所示:

4.根据安装目录找到安装的插件文件,如下图所示:

5.将Stave.dll文件拷贝到安装Fiddler的插件目录下,如下图所示:

6.重启Fiddler,可以在Fiddler的选项卡中看到这个Stave插件,一个音乐符号的图标,如下图所示:

从上图我们不难看出:本身stave插件的实列如上2个,第一个是替换单个文件的,第二个是替换目录的。接下来跟随宏哥一起来看看它们的如何配置的,具体步骤如下:

1.选中一个实例,右键-->编辑,如下图所示:

2.点击“编辑”后,打开编辑界面,如下图所示:

可以看到如上配置,我们回归今天文章的主题先来实践下吧!例如:还是要将百度首页的切换成博客园首页,具体操作步骤如下:

1.首先点击右侧,右键 --> 添加,如下图所示:

2.弹出添加规则页面,添加规则,点击“确定”,如下图所示:

3.浏览器访问百度,发现网址是www.baidu.com,但是浏览器访问的却是博客园首页,如下图所示:

3.2插件(Willow)

我们可以把Willow插件当作是AutoResponder工具和Tools —> HOSTS...功能的加强版。但是Willow插件对于Windows系统中的hosts文件的管理更加的丰富,可以根据不同的环境,比如测试环境,开发环境等,采用不同的主机规则。同理Willow插件对于AutoResponder工具也是一样的,Willow插件可以用工程的方式,来区分不同环境所需要的主机规则和自动响应规则,这个功能就非常的实用。

这款插件宏哥在讲解和介绍Fiddler的精选插件部分就已经重点介绍过了,这里就不做赘述了,宏哥这里直接演示如何使用,具体操作步骤如下:

1.在Willow插件中,右键Add Project(Ctrl+P)。如下图所示:

2.填写项目的名称为:demo,如下图所示:

3.选中项目,右键Add Rule(Ctrl+U),如下图所示:

4.填写Match(原始会话)和Action(替换动作),如下图所示:

5.再次刷新百度首页后,发现网址是www.baidu.com,但是浏览器访问的却是博客园首页,这是因为在访问百度首页网址的时候,Fiddler自动地将其替换成博客园的首页网址。如下图所示:

6.这款插件会把重定向的会话标识上颜色,如下图所示:

4.小结

Willow插件比Stave插件强大很多,而且Stave的功能,Willow插件都可以做到,这样Willow可以完全替代Stave插件,可能是因为这个原因官网不维护了,也可能是由于资金等其他原因。好了,今天时间也不早了,宏哥就讲解和分享到这里,感谢你耐心地阅读!!!

《吐血整理》高级系列教程-吃透Fiddler抓包教程(24)-Fiddler如何优雅地在正式和测试环境之间来回切换-中篇的更多相关文章

  1. 《吐血整理》高级系列教程-吃透Fiddler抓包教程(23)-Fiddler如何优雅地在正式和测试环境之间来回切换-上篇

    1.简介 在开发或者测试的过程中,由于项目环境比较多,往往需要来来回回地反复切换,那么如何优雅地切换呢?宏哥今天介绍几种方法供小伙伴或者童鞋们进行参考. 2.实际工作场景 2.1问题场景 (1)已发布 ...

  2. 《吐血整理》高级系列教程-吃透Fiddler抓包教程(25)-Fiddler如何优雅地在正式和测试环境之间来回切换-下篇

    1.简介 在开发或者测试的过程中,由于项目环境比较多,往往需要来来回回地反复切换,那么如何优雅地切换呢?宏哥今天介绍几种方法供小伙伴或者童鞋们进行参考. 2.实际工作场景 2.1问题场景 (1)已发布 ...

  3. 《吐血整理》高级系列教程-吃透Fiddler抓包教程(34)-Fiddler如何抓取微信小程序的包-上篇

    1.简介 有些小伙伴或者是童鞋们说小程序抓不到包,该怎么办了???其实苹果手机如果按照宏哥前边的抓取APP包的设置方式设置好了,应该可以轻松就抓到包了.那么安卓手机小程序就比较困难,不是那么友好了.所 ...

  4. 《吐血整理》高级系列教程-吃透Fiddler抓包教程(31)-Fiddler如何抓取Android系统中Flutter应用程序的包

    1.简介 Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面.Flutter应用程序是用Dart编写的,这是一种由Google在7年多前创建的语言.Flut ...

  5. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(9)-Fiddler如何设置捕获Https会话

    1.简介 由于近几年来各大网站越来越注重安全性都改成了https协议,不像前十几年前直接是http协议直接裸奔在互联网.还有的小伙伴或者童鞋们按照上一篇宏哥的配置都配置好了,想大展身手抓一下百度的包, ...

  6. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(10)-Fiddler如何设置捕获Firefox浏览器的Https会话

    1.简介 经过上一篇对Fiddler的配置后,绝大多数的Https的会话,我们可以成功捕获抓取到,但是有些版本的Firefox浏览器仍然是捕获不到其的Https会话,需要我们更进一步的配置才能捕获到会 ...

  7. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(11)-Fiddler设置安卓手机抓包,不会可是万万不行的!

    1.简介 Fiddler不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Fiddler能截获 Android 和 Windows Phone 等 ...

  8. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(12)-Fiddler设置IOS手机抓包,你知多少???

    1.简介 Fiddler不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Fiddler 能捕获Android 和 Windows Phone 等 ...

  9. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(16)-Fiddler如何充当第三者,再识AutoResponder标签-上篇

    1.简介 Fiddler充当第三者,主要是通过AutoResponder标签在客户端和服务端之间,Fiddler抓包,然后改包,最后发送.AutoResponder这个功能可以算的上是Fiddler最 ...

随机推荐

  1. harbor之HTTPS安装

    1.下载解压 # tar -xvf harbor-offline-installer-v1.7.6.tgz # cd /harbror 2.下载python2.7 # apt install pyth ...

  2. HelloWorld入门程序

    程序开发步骤说明 开发环境搭建完成后我们就可以开发第一个java程序了 java程序开发三步骤:编写.编译.运行 编写Java源程序 1.在本地盘目录下新建文本文件,完整的文件名修改为HelloWor ...

  3. Splash (渲染JS服务)介绍安装

    一. splash介绍 1.Splash 是一个带有 HTTP API 的 javascript 渲染服务.它是一个带有 HTTP API 的轻量级浏览器,使用 Twisted 和 QT5 在 Pyt ...

  4. 内存问题难定位,那是因为你没用ASAN

    摘要:ASAN全称:Address Sanitizer,google发明的一种内存地址错误检查器.目前已经被集成到各大编译器中. 本文分享自华为云社区<内存定位利器-ASAN使用小结>,作 ...

  5. MySQL内存管理机制浅析

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. GreatSQL是MySQL的国产分支版本,使用上与MySQL一致. 目录 一.placement new的定义 二.pl ...

  6. 使用JMeter进行MySQL的压力测试

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. GreatSQL是MySQL的国产分支版本,使用上与MySQL一致. 目录 前言 1. JMeter安装 2. 导入MyS ...

  7. 【安全通报】DolphinScheduler 漏洞情况说明

    Apache DolphinScheduler 社区邮件列表最近通告了 2 个漏洞,考虑到有很多用户并未订阅此邮件列表,我们特地在此进行情况说明: CVE-2020-11974[1] 漏洞 (CVE- ...

  8. luoguP3224 [HNOI2012]永无乡【线段树,并查集】

    洞庭青草,近中秋,更无一点风色.玉鉴琼田三万顷,着我扁舟一叶.素月分辉,明河共影,表里俱澄澈.悠然心会,妙处难与君说. 应念岭表经年,孤光自照,肝胆皆冰雪.短发萧骚襟袖冷,稳泛沧溟空阔.尽挹西江,细斟 ...

  9. Java SE 12 新增特性

    Java SE 12 新增特性 作者:Grey 原文地址:Java SE 12 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  10. LeetCode 593. 有效的正方形(向量做法)

    题目 题目链接:593. 有效的正方形 题意:给出二维平面上四个点的坐标,判断这四个点是否能构成一个正方形,四个点的输入顺序不做任何保证. 思路 通过向量运算可以很轻松地解决这道题.任取一点向其他三点 ...