3

在提琴手中,我们可以通过以下命令放置断点:-

[bpv or bpm]为指定的 HTTP 方法创建请求断点。设置此命令将清除该命令之前的任何值;不带参数调用它会禁用断点。bpv POST bpv <-- 无参数调用以清除

[bpu] 为包含指定字符串的 URI 创建请求断点。设置此命令将清除该命令之前的任何值;不带参数调用它会禁用断点。bpu /myservice.asmx bpu

如果我想中断请求

a) 如果要求http://url_1/dummy1.svc

b)如果请求http://url_2/dummy2.svc/DoWork(从 yui ajax 请求中调用)

两个网址都在发出 POST 请求。所以我尝试了bpv POST命令,但它只在“a”场景中中断。

我给予bpu http://url_2/dummy2.svc/DoWorkbpv POST命令。但它似乎bpv工作但不是bpu。如果我给bpv POST然后工作bpu http://url_2/dummy2.svc/DoWorkbpu不是bpv

让我知道如何同时使用bpu两者bpv

如何使用 fiddler 捕获两个 url 请求?

谢谢,

4

2 回答 2

5

单击自动回复选项卡。

使用 Rules 和 ActionText 添加两个新条目,如下所示:

http://url_1/dummy1.svc           *bpu
http://url_2/dummy2.svc/DoWork    *bpu

或者,单击规则 > 自定义规则。滚动OnBeforeRequest并添加

if (oSession.HTTPMethodIs("POST"))
{
    // Careful, URLs are Case-Sensitive...
    if ((oSession.fullUrl == "http://url_1/dummy1.svc") ||
        (oSession.fullUrl == "http://url_1/dummy2.svc/DoWork"))
    {
        oSession["X-BreakRequest"] = "script";  
    }
}
于 2012-06-07T00:37:54.860 回答
0

查看 Fiddler 中的内置规则代码(在 Fiddler 中键入 ctrl-r),这是设置断点的方式:

if ((null!=bpRequestURI) && oSession.uriContains(bpRequestURI)) {
    oSession["x-breakrequest"]="uri";
}

if ((null!=bpMethod) && (oSession.HTTPMethodIs(bpMethod))) {
    oSession["x-breakrequest"]="method";
}

这个逻辑意味着基于 URI 和 Method 的断点是互斥的。我对创建自定义规则知之甚少,无法知道是否可以创建满足您需要的复合规则。

于 2012-06-06T13:42:52.167 回答