在 Fiddler 自动响应(AutoResponder)选项卡的底部是个规则列表。如下图:
其中,表格字段含义如下:
第一列:匹配条件(Match Condition),该字段的内容用于判断接收到的请求是否匹配该规则,Match Condition 前面的复选框控制规则是否选中。
第二列:说明规则匹配时所需要采取的操作,即返回什么数据给请求。Action Text 可以指定要返回的本地文件
名,也可以指定其他行为类型。
第三列:仅仅当我们勾选了 “Enable Latency” 复选框时,才会出现 “Latency” 列,该列说明了规则的延迟时间。
第四列:规则的注释信息
当选中某个规则时,在上方的 “Rule Editor” 选项框中可以调整规则的匹配条件和动作。点击 “Test...” 链接支持根据选中的样本 URI 测试匹配条件。如下图:
上图中,为 http://localhost/demo/images/png-0001.png URL 图片应用的动作非常简单,即返回本地一张 png 图片。Fiddler 我们内置了非常多的其他动作,如下图:
其中:
200_FiddlerGif.dat Fiddler 将返回一个 gif 图片给客户端,报文内容如下:
HTTP/1.1 200 OK Date: Fri, 25 Jan 2013 16:49:29 GMT FiddlerTemplate: True Content-Length: 308 Content-Type: image/gif
如下图:
200_SimpleHTML.dat Fiddler 将返回一个简单的 HTML 报文,报文内容如下:
HTTP/1.1 200 OK FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Content-Length: 51 This is a simple Fiddler-returned <B>HTML</B> page.
如下图:
200_TransPixel.dat Fiddler 返回一个内置的位图,报文部分内容如下:
HTTP/1.1 200 OK Date: Fri, 25 Jan 2013 16:49:29 GMT FiddlerTemplate: True Content-Type: image/gif Content-Length: 49 ...图片内容...
204_NoContent.dat Fiddler 将返回状态码为 204,且没有任何内容的报文。报文内容如下:
HTTP/1.1 204 No Content FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Content-Length: 0
302_Redirect.dat Fiddler 将重定向到 Fiddler 官网,报文内容如下:
HTTP/1.1 302 Redirect FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Location: http://www.fiddler2.com/sandbox/FormAndCookie.asp Content-Length: 0
303_RedirectWithGet.dat Fiddler 将重定向到 Fiddler 官网,报文内容如下:
HTTP/1.1 303 Redirect Using GET FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Location: http://www.fiddler2.com/sandbox/FormAndCookie.asp Content-Length: 0
304_NotModified.dat Fiddler 将返回一个状态码为 304(304 状态码是当客户端尝试访问服务器同一页面的时候,如果二次访问的时候,页面内容并没有发生改变,那么服务器就会返回 304 状态码,严格意义上讲,它并不是一种错误),长度为 0 的 HTTP 报文,报文内容如下:
HTTP/1.1 304 Not Modified FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Content-Length: 0
307_RedirectWithMethod.dat Fiddler 将返回一个状态码为 307 的报文,报文内容如下:
HTTP/1.1 307 Redirect using same Method FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Location: http://www.fiddler2.com/sandbox/FormAndCookie.asp Content-Length: 0
401_AuthBasic.dat Fiddler 将返回状态码为 401 且基础权限验证失败的响应报文,表示用户没有访问权限,需要进行身份认证。报文内容如下:
HTTP/1.1 401 Authentication Required FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT WWW-Authenticate: Basic realm="Fiddler" Content-Type: text/html Content-Length: 520 Fiddler: HTTP/401 Basic Server Auth Required.
401_AuthDigest.dat Fiddler 将返回状态码为 401 且摘要权限验证失败的响应报文,报文内容如下:
HTTP/1.1 401 Authentication Required FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT WWW-Authenticate: Digest realm="realm@example.com",qop="auth,auth-int",nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093",opaque="5ccc069c403ebaf9f0171e9517f40e41" Content-Type: text/html Content-Length: 520 Fiddler: HTTP/401 Digest Server Auth Required.
403_AuthDeny.dat Fiddler 将返回状态码 403,没有访问权限错误信息的响应报文,报文内容如下:
HTTP/1.1 403 Access Denied FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Content-Length: 520 Fiddler: HTTP/403 Access Denied.
404_Plain.dat Fiddler 将返回 HTML 文件不存在的响应报文,报文内容如下:
HTTP/1.1 404 Not Found FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Content-Type: text/html Content-Length: 520 Fiddler: HTTP/404 Not Found
407_ProxyAuthBasic.dat Fiddler 将返回一个代理服务没有通过 HTTP 基础权限认证进行认证的响应报文,报文内容如下:
HTTP/1.1 407 Proxy Auth Required FiddlerTemplate: True Date: Fri, 25 Jan 2013 16:49:29 GMT Proxy-Authenticate: Basic realm="Fiddler (just hit Ok)" Content-Type: text/html Content-Length: 520 Fiddler: HTTP/407 Proxy Auth Required.
502_Unreachable.dat Fiddler 将返回一个状态为 502 服务器不可用的响应报文,报文内容如下:
HTTP/1.1 502 Unreachable Server Date: Fri, 25 Jan 2013 16:49:29 GMT FiddlerTemplate: True Content-Type: text/html Content-Length: 520 Fiddler: HTTP/502 unreachable server.
*bpu Fiddler 将为当前匹配的请求添加一个请求断点。
*bpafter Fiddler 将为当前匹配的请求添加一个响应断点。
*exit Fiddler 将停止正在处理的规则。
*drop Fiddler 不发送响应,马上关闭客户端连接。从 TCP/IP 层角度看,该连接是优雅断开的,向客户端返回FIN。报文如下:
HTTP/1.1 0 Client Connection Dropped Content-Length: 0
*reset Fiddler 不发送响应,马上关闭客户端连接。从 TCP/IP 层角度看,该连接是粗暴断开的,向客户端返回RST。报文如下:
HTTP/1.1 0 Client Connection Reset Content-Length: 0
*delay:100 Fiddler 将为当前匹配的请求添加 100 毫秒的延迟,当然,你可以根据自己的需要将 100 改为其他任何想要延迟的时间。
*ReplyWithTunnel 使用隧道进行回复。
*CORSPreflightAllow 我们可借助 Access-Control-Allow-Origin 响应头字段允许跨域 AJAX, 对于非简单请求,CORS 机制跨域会首先进行 preflight(一个 OPTIONS 请求), 该请求成功后才会发送真正的请求。 这一设计旨在确保服务器对 CORS 标准知情,以保护不支持 CORS 的旧服务器。
*flag:ui-backcolor=#FFD700 Fiddler 将当前匹配的请求在 Web 请求列表中添加背景颜色,#FFD700 表示黄色,注意,颜色你可以根据自己的喜好进行设置。
*header:HaderName=NewValue Fiddler 将在当前匹配的请求中添加头字段,字段名为 HeaderName,字段值为 NewValue,可以根据自己的需要自行进行设置。
*redir:http://www.example.com Fiddler 将返回指向目标 URL 的 HTTP/307 重定向响应。使用前缀 *redir可以确保客户端知道请求将发送到哪里,从而可以发送正确的cookie。
*script:FiddlerScriptFunctionName Fiddler 将为匹配的请求调用 FiddlerScript 中指定的函数。
http://www.example.com Fiddler 将 http://www.example.com 的响应内容作为客户端响应。该Action可以有效地把请求重定向到不同的 URL,而不需要通知客户端应用。如下图:
Create New Response... 输入文件名,Fiddler 将在 C:\Users\Administrator\Documents\Fiddler2\Captures\Responses 目录下面查找该文件信息,如下图:
Find a file... 将选择本地一个文件(文本文件、图片等)作为响应返回给客户端