Fiddler学习:AutoResponder初涉

前言

有时候,调试的时候,本地环境没有问题,遇到外网环境出bug了,并且外网代码都是压缩过的,很差debug,可咋办呢?web

那就得靠AutoResponder来调试了。正则表达式

1、AutoResponder的做用

Fiddler 的AutoResponder tab容许你从本地返回文件,而不用将http request 发送到服务器上。服务器

即访问页面的时候,根据匹配,将访问到你本地的文件,这样,跟踪代码、调bug的时候,垂手可得。app

AutoResponder本质就是Fidder拦截了http的response,取代之以用户自定义的资源。webapp

2、AutoResponder的规则

使用AutoResponder选项卡,你能够建立一个匹配规则和一个响应字符串,若是请求的URL地址跟你的匹配规则相匹配,spa

Fiddler就会自动执行这个对应的响应字符串。debug

小提示:调试

  • 匹配规则会按照它在规则列表中出现的顺序进行匹配, 按+键可使一个匹配规则向上移一项,按-键可使一个匹配规则向下移一项。
  • 使用右键菜单, 你能够导出一个包含了全部的匹配规则和对应响应字符串的后缀为 .FARX 的文件。
  • 你也能够经过导入  .SAZ or .FARX 文件来建立基于之前建立的规则列表和响应列表.
  • 你能够从会话列表中拖动一个会话到AutoResponder选项卡中来从新演示之前的响应. 你也能够选中一条规则,而后回车这样就能够来编辑一条规则。
  • 你也能够直接从Windows的资源管理器中拖动一个文件到 AutoResponder选项卡中来为这些文件建立规则和响应

Demo:blog

字符串匹配。ip

注意:记得勾选【Unmatched requests passthrough】,这样不匹配的文件会直接跳过,

匹配规则

纯粹字符串

Fiddler将会按照不区分字母大小写来匹配字符串。

Demo以下:

Rule Matches
* http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js
shiqudou. http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js
dev/ http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js
script http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js

 

跟上面的相似,Fiddler还有一个非字符串匹配的规则:NOT:

Demo以下:下面的都匹配。

Rule Matches
NOT:shiqudou. http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js
NOT:dev1/ http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js
NOT:script2 http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js

Exact匹配:

表达式以EXACT:彻底匹配,为前缀,此匹配区分字母大小写

Demo以下:

Rule Matches
EXACT:https://www.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js
EXACT:https://www.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/Detail.js http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js (不匹配- 大小写不同)
EXACT:https://www.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/de http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js (不匹配- 子字符串不同)

正则表达式:

Fiddler支持以regex:为前缀的正则表达式语法,使用.+匹配一个或多个字符,使用.*匹配0个或多个字符,使用^匹配字符串开始位置,使用$匹配字符串结尾位置。

Demo以下:

Rule Matches
regex:.+ http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js
regex:.+\.js.* http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js
regex:.+\.js$ http://dev.shiqudou.cn/webapp/2.2.0/dev/script/log/tpl/detail.js&bar

3、结语

经过AutoResponder将线上代码请求映射到本地,这样调试起来,问题是否是容易定位了呢。

对于处理紧急bug,很是适合快速web调试

相关文章
相关标签/搜索