另一种方法是使用Fiddler的自动回复选项卡(右侧面板上) 。这允许您捕获任何匹配字符串的URI的请求,并提供文件中的“canned”响应。该文件可以包含标头和有效载荷。这种方法的优点是,您不必编写FiddlerScript,也不必通过断点手动处理每个请求。
您可以在Fiddler中设置规则,如下所示(确保您启用不匹配的请求传递否则所有其他http请求都会失败)。
在这个例子中,任何URI包含“fooBar”的请求都将获得预设的响应。该文件的格式将根据您的API(你可以用你的浏览器拦截一个“真实”的响应和它的基础上)有所不同,但我的看起来像下面这样:
HTTP/1.1 409 Conflict
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.5; JBoss-5.0/JBossWeb-2.1
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, DELETE, PUT, PATCH, OPTIONS
Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization
Access-Control-Max-Age: 86400
Content-Type: application/vnd.api+json
Content-Length: 149
Date: Tue, 28 Mar 2017 10:03:29 GMT
{"errors":[{"code":"OutOfStock","detail":"Item not in stock","source":{"lineId":{"type":"Order line Number","id":"1"}},"meta":{"availableStock":0}}]}
我发现,它需要一个在最后一行(即json之后)回车,并且Content-Length头必须匹配json中的字符数,否则webapp将挂起。你的旅费可能会改变。