通过设置fiddler的customize Rules可以实现一些工具栏无法实现的操作。
修改customize Rules方法是 工具栏的Rules—>Customize Rules…或者按快捷键ctrl+R,前提是要是fidller是当前活动窗口按快捷键才管用。默认的话会打开记事本编辑器,编辑一个js文件。
当然可以下载fidller提供的rules专用编辑器,提供了比较好的语法检查、高亮、api、行号显示、快速定位到要修改的方法等比较方便操作,下载地址:http://www.fiddlertool.com/fiddler/fse.asp
1:有些时候我们可能要使得我们访问的某个网站的URL重定向到另外一个主机URL。比如你要调试服务器上的js,至于是为了修复bug,还是找漏洞就是另外的事情了,但是服务器上的js一般为了提高访问速度,都是被压缩的。人根本没法看,这个时候如果你本地有一个非压缩的。就可以使这个文件的请求重定向到你本地文件,方便调试。当然本地要先启动一个web服务有这个文件才行,
实例请求苏宁易购支付平台易付宝https://pay.suning.com/epp-portal/login.action返回的信息用chrome查看如下:

比如现在我想把这个文件替换为我本地的jquery1.8进行调试。难道修改服务器。no。直接用fiddler就可以了。在fiddler的rules里面的onBeforeRequest里面添加如下code:
if (oSession.url==”pay.suning.com/epp-portal/scripts/jquery-1.4.4.min.js”) {
oSession.url = “localhost/ylk/js/jquery-1.8.2.js”;
}
就可以将这个文件替换为我本地的了。
再次访问如图下图所示 :虽然文件名没有改,但是文件内容已经是我本地的内容了。
其实如果大家按照我的操作,很可能失败。因为这个是https的请求。我也是在本地假设了个https的web服务器。如果说把oSession.url = “localhost/ylk/js/jquery-1.8.2.js”;改为oSession.url = “http://localhost/ylk/js/jquery-1.8.2.js”;不就可以了么?这样fiddler会报错。难道必须也要假设个https的web服务器。no,请继续看。
2:拦截及篡改指定URL。其实fiddler,http和https的都可以拦截和篡改。
一般拦截的话,大家直接点击菜单栏rules—->automatic breakpoints—>选择在请求前暂定、还是在响应后暂停就可以了。暂定住了就可以修改请求或响应了。哈哈。比如删掉或者修改某段响应的js。篡改请求的cookie值等,相当方便。但是我们访问一个网页的时候,这个网页往往关联好多资源(css.js)。这样的拦截操作会拦截所有的url。然后还要一个一个放行,这样太麻烦了。能不能只拦截我们关心的URL呢?答案是可以的。如下。
在onBeforeRequest中添加如下code:
if (oSession.url.toLowerCase().indexOf(“jquery-1.4.4.min.js”)>-1){
oSession["x-breakrequest"]=”pause on jquery”; //这里的”pause on query”字符串写什么都行
}
就可以只拦截暂停我们关心的URL,然后可以进行篡改等。图片看不清可以点击看大图。

3:仅显示感兴趣的回话
有些时候访问一个网页会带出来好多请求,这个时候回话列表里面比较多,怎么样可以只显示自己关心的呢。比如只拦截https://pay.suning.com/epp-portal/login.action,而这个页面的附带图片,css,js不拦截可以修改custom Rules在OnBeforeRequest中添加
if (oSession.url.indexOf(“epp-portal/login.action”)==1){
oSession["ui-hide"]=”hide not login.action”; //这里的字符串可以随便写无所谓
}
这里只是列举几个。还有其他好多功能。比如替换host、不同样式显示指定的回话等都差不多也是这样改的。可以参考下面的网址,试试。就明白了。
https://www.fiddler2.com/Fiddler/Dev/ScriptSamples.asp
http://www.fiddlertool.com/Fiddler/help/
4.关于fiddler的快速执行QuickExec
如果实现一些操作只能修改rules,每次都编辑,风险也大,也不方便。这个时候可以使用quickExec位于窗口的左下角,使用起来更简单方便。具体使用可以参考如下网址
http://fiddler2.com/fiddler/help/quickexec.asp