Fiddler抓包工具可以修改服务端返回的数据,比如说一个接口是返回学生的姓名,正确的相应结果学生姓名是“张三”,但是测试工程师想返回一个姓名是“张三大大泡泡堂”(这么长的姓名估计是想验证一下名称过长显示是否正确)。要想修改服务端的相应结果,可以试用fiddler的AutoResponder工具。
第一步:设置代理
手机端设置代理,使得Fiddler可以抓取服务端的接口地址,这个是Fiddler最基本的使用了,在此不再赘述。
第二步:添加请求地址
在添加请求地址之前,先打开AutoResponder开关,右侧N个Tab页面,点击AutoResponder,勾选“Enable rules”,如下图所示。
然后点击“Add Rule”按钮,Rule Editor的编辑框就会变为可编辑状态,开始添加请求地址。有两种办法可以添加请求地址:1、在编辑框输入要修改的请求地址 2、也可以在左侧抓包列表中选中要使用的请求地址,再点击Add Rule按钮,这样请求地址就会自动输入到请求地址中,推荐使用后者。如下图所示。
第三步:添加响应结果(划重点,就是在这一步自定义响应结果)
在Rule Editor中点击第二个编辑框的下拉按钮会有,点击Find a file……选择事先准备好的响应结果文件一般是json文件,点击Save按钮,保存成功,再次使用手机请求这个接口的时候,返回的结果就是我们在json文件中定义好的响应结果了。
另外,也可以选择倒数第二个菜单“Create New Response”,但是这样需要自己手动输入响应结果,如果输入的有一点点错误都不能得到我们想要的响应结果,所以并不太推荐这种方法。
点击Test…按钮可以验证一下当前选中的请求地址和添加的请求地址是否匹配
勾选MathOnly once就是这种自定义的响应结果只会生效一次,第二次请求的时候还是会恢复到服务端返回的响应结果,要不要勾选这个选项看个人需求吧。
另外,我们可能会添加好多个自定义的响应结果,太多了就不太清楚哪个Rule究竟是用来干嘛的,Fiddler还可以添加注释,在AutoResponder列表中,选中一个Rule,右键菜单-Set Comment可以输入注释。
其他:如何准备自定义的响应文件呢?
Fiddler已经为我们做好了这个功能,在左侧的请求地址列表中,选中我们需要修改的请求地址,右键菜单中选择Response Body…保存响应文件,把响应文件使用Notepad++打开,修改我们需要自定义的字段保存成功即可。
再简单回顾一下这个过程:
1、手机端连代理,使得Fiddler可以抓取我们要使用的请求地址
2、在左侧请求地址列表中,保存我们需要的请求地址相应的响应结果文件,并且修改我们需要自定义的字段
3、打开AutoResponder,添加请求地址和响应结果,使用手机再次请求这个地址就会按照我们修改的响应结果返回了。