AutoResponder及正则表达式
使用AutoResponder选项卡,你可以创建一个匹配规则和一个响应字符串,如果请求的URL地址跟你的匹配规则相匹配,Fiddler就会自动执行这个对应的响应字符串。
小提示:
- 匹配规则会按照它在规则列表中出现的顺序进行匹配, 按+键可以使一个匹配规则向上移一项,按-键可以使一个匹配规则向下移一项。
- 使用右键菜单, 你可以导出一个包含了所有的匹配规则和对应响应字符串的后缀为 .FARX 的文件。
- 你也可以通过导入 .SAZ or .FARX 文件来创建基于以前创建的规则列表和响应列表.
- 你可以从会话列表中拖动一个会话到AutoResponder选项卡中来重新演示以前的响应. 你也可以选中一条规则,然后回车这样就可以来编辑一条规则。
- 你也可以直接从Windows的资源管理器中拖动一个文件到 AutoResponder选项卡中来为这些文件创建规则和响应。
匹配规则:
纯粹字符串
Fiddler将会按照不区分字母大小写来匹配字符串。
Demo如下:
Rule | Matches |
---|---|
* | http://www.example.com/Path1/query=example |
EXAMPLE | http://www.example.com/Path1/query=example |
path1/ | http://www.example.com/Path1/query=example |
query | http://www.example.com/Path1/q=Query |
跟上面的类似,Fiddler还有一个非字符串匹配的规则:NOT:
Demo如下:下面的都匹配。
Rule | Matches |
---|---|
NOT:EXAMPLE | http://www.test.com/Path1/query=test |
NOT:path1/ | http://www.example.com/Path2/query=example |
NOT:query | http://www.example.com/Path1/q |
Exact匹配:
表达式以EXACT:为前缀,此匹配区分字母大小写
Demo如下:
Rule | Matches |
---|---|
EXACT:http://www.example.com/path | http://www.example.com/path |
EXACT:http://www.example.com/path | http://www.example.com/Path (不匹配- 大小写不一样) |
EXACT:http://www.example.com/path | http://www.example.com/path/q=Query (不匹配- 子字符串不一样) |
正则表达式:
Fiddler支持以regex:为前缀的正则表达式语法,使用.+匹配一个或多个字符,使用.*匹配0个或多个字符,使用^匹配字符串开始位置,使用$匹配字符串结尾位置。
Demo如下:
Rule | Matches |
---|---|
regex:.+ | http://www.example.com/Path1/query=example |
regex:.+\.jpg.* | http://www.example.com/Path1/query=foo.jpg&bar http://www.example.com/Path1/query=example.jpg |
regex:.+\.jpg$ | http://www.example.com/Path1/query=foo.jpg&bar (No Match - improper ending) http://www.example.com/Path1/query=example.jpg |
regex:.+\.(jpg|gif|bmp)$ | http://www.example.com/Path1/query=foo.bmp&bar (No Match - improper ending) http://www.example.com/Path1/query=example.gif http://www.example.com/Path1/query=example.Gif (No Match - mismatched case) http://www.example.com/Path1/query=example.bmp |
regex:(?insx).+\.(jpg|gif|bmp)$ | http://www.example.com/Path1/query=foo.bmp&bar (No Match - improper ending) http://www.example.com/Path1/query=example.gif http://www.example.com/Path1/query=example.Gif http://www.example.com/Path1/query=example.bmp |
想要学习更多正则表达式的请看这里here.
响应字符串
除了简单的返回文件,AutoResponder选项卡还有更多的用处........
Beyond simply returning files, the AutoResponder can also perform special actions...
Action String | Result... |
---|---|
filename | 返回文件内容作为消息响应 |
http://targetURL | 返回此URL的内容作为消息响应 |
*redir:http://targetURL | 返回一个跳转URL,注意,不是一般的URL,一定要确保此URL知道要到哪里去,以便携带上相关的Cookie信息。 |
*bpu | 设置一个断点在发往服务器以前停住此请求Non-final action. |
*bpafter | 设置一个断点在接收响应之前停住此请求Non-final action. |
*delay:#### | 设置在发给服务器之前的延时,以毫秒为单位。Non-final action. |
*header:Name=Value | 设置请求头的内容,如果没有那个请求头,则新建一个请求头Name并设置为ValueNon-final action. |
*flag:Name=Value | 设置Session Flag的内容,如果没有那个Session Flag,则新建一个Session FlagName并设置为ValueNon-final action. |
*CORSPreflightAllow | 返回一个响应标志 CORS 是否被允许。. |
*reset | 使用一个TCP/IP RST 重新设置客户端的链接。 |
*drop | 马上关闭客户端链接。 |
*exit | 这时候停止处理匹配。 |
如果你的匹配规则使用了正则表达式,那么响应也可以使用正则表达式,更多信息请看这里: Learn more...
标志为Non-final action.的请求会匹配多个响应规则,如果一个规则是final action ,那么再找到匹配之后,匹配过程就会结束,对于那条请求来说就不会再匹配其它的规则。
延迟响应
在一个请求返回来之前你可以设置一下请求延迟返回的时间。选中Enable Latency 复选框,可以设置所有的规则的延迟。
右键单击一个或者多个规则,然后选择 Set Latency 就可以设置具体的延迟时间。如果你想调整现存的延迟时间,只需要输入一个带有+或者-号的数字即可。
如果你想在现在的延迟时间基础上面减少500毫秒,那么在弹出的输入框中输入-500即可。
好了,今天就到这里吧,O(∩_∩)O~
报文内容无法查看的时候需要点击上面的decode
可以用记事本打开了
注意这里的匹配模式,是精确匹配EXACT、否定匹配NOT、正则匹配regex:、还是普通的文本匹配
复制之前用记事本记录的报文。
AutoResponder及正则表达式的更多相关文章
- 前后端分离之fiddler前端开发代理 autoresponder 正则表达式 regex:(?insx) 修正符详解
regex:(?isx)^http://127.0.0.1:3000(/dlscene)?/order/(\w*) http://127.0.0.1:8080/dlscene/order/$2 上面这 ...
- Fiddler中使用AutoResponder创建规则替换线上文件
Fiddler 的AutoResponder tab允许你从本地返回文件,而不用将http request 发送到服务器上. 1.AutoResponder规则实例 (1) 打开博客园首页,把博客园的 ...
- fiddler-重定向AutoResponder(三)
关于Fiddler的AutoResponder重定向功能,主要是时进行会话的拦截,然后替换原始资源的功能. 它与手动修该reponse是一样的,只是更加方便了,可以创建相应的rules,适合批处理的重 ...
- Fiddler: AutoResponder 构建模拟测试场景
AutoResponder 可用于拦截某一请求,并重定向到本地的资源,或者使用Fiddler的内置响应.可用于调试服务器端代码而无需修改服务器端的代码和配置,因为拦截和重定向后,实际上访问的是本地的文 ...
- Fiddler使用 断点 模拟返回 AutoResponder Mock 模拟数据 相关学习记录
断点 测试中有时需要改变发出去的请求信息,需要用到打断点的方法.断点包含两种方式: before response:在request请求的时候,未到达服务器之前,一般用来修改请求参数 after re ...
- 『言善信』Fiddler工具 — 9、Fiddler自动响应器(AutoResponder)详解
目录 1.AutoResponder介绍 2.AutoResponder界面说明 (1)选项: (2)按钮: (3)Rule Editor(规则编辑): (4)test(测试): (5)规则框: 1. ...
- 『言善信』Fiddler工具 — 10、Fiddler自动响应器(AutoResponder)的应用
目录 1.图片重定向 2.URL重定向 3.本地调试js文件 4.模拟Mock接口测试 5.综合练习 6.总结 介绍几个Fiddler自动响应器(AutoResponder)应用场景: 场景一:生产环 ...
- JS正则表达式常用总结
正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...
- Python高手之路【五】python基础之正则表达式
下图列出了Python支持的正则表达式元字符和语法: 字符点:匹配任意一个字符 import re st = 'python' result = re.findall('p.t',st) print( ...
随机推荐
- 《Java编程思想》笔记 第七章 复用类
1.组合 将其他类的对象引用置于新的类中. 3.继承 extends 从已知的一个类中派生出新的一个类,叫子类.子类实现了父类所有 非私有化 非静态 的属性和方法,并能根据自己的实际需求扩展出新的行为 ...
- rest_frameword框架的基本组件
序列化 序列化:转化数据和校验数据(提交数据时校验数据类型) 开发我们的Web API的第一件事是为我们的Web API提供一种将代码片段实例序列化和反序列化为诸如json之类的表示形式的方式.我们可 ...
- css项目列表如何水平放置
列表项目默认分行排列,那么将列表项设置浮动就可以实现水平放置 1 li{float:left;} 示例如下: 创建Html元素 1 2 3 4 5 6 <ul> <li> ...
- 理解OCI(Open Container Initiative)及docker的OCI实现(转)
OCI定义了容器运行时标准,runC是Docker按照开放容器格式标准(OCF, Open Container Format)制定的一种具体实现. runC是从Docker的libcontainer中 ...
- STL模板整理 priority_queue
priority_queue 优先队列是队列的一种,不过它可以按照自定义的一种方式(数据的优先级)来对队列中的数据进行动态的排序,每次的push和pop操作,队列都会动态的调整,以达到我们预期的方式来 ...
- HDU 2647 Reward【反向拓扑排序】
Reward Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...
- RabbitMQ使用介绍(python)
在我们的项目开发过程中,我们有时会有时候有两个或者多个程序交互的情况,当然就会使用到这里的消息队列来实现.现在比较火的就是RabbitMQ,还有一些ZeroMQ ,ActiveMQ 等等,著名的ope ...
- HDU 2819 Swap(二分图匹配)
[题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=2819 [题目大意] 给出一个棋盘,由白格子和黑格子组成,可以交换棋盘的行列, 使得其主对角线为黑格 ...
- 【枚举】【权值分块】bzoj1112 [POI2008]砖块Klo
枚举长度为m的所有段,尝试用中位数更新答案. 所以需要数据结构,支持查询k大,以及大于/小于 k大值 的数的和. 平衡树.权值线段树.权值分块什么的随便呢. #include<cstdio> ...
- c# 播放mp3
转载:http://www.cnblogs.com/igrl/archive/2010/03/29/1699975.html /// <summary> /// 播放MP3文件 /// & ...