Fiddler:阻止(过滤掉)特定页面

时间:2012-03-12 06:25:33

标签: fiddler

我想过滤出会话列表中显示的特定页面。我不是在讨论过滤掉整个域/主机(使用过滤器选项卡),也不是在谈论实际阻止加载页面(可以通过扩展来完成) - 我只是不想在这里看到这个页面会话列表。 10倍。

3 个答案:

答案 0 :(得分:9)

规则>自定义规则。滚动到OnBeforeRequest。添加以下块:

if (oSession.fullUrl == "http://whatever/whatever"){
  oSession["ui-hide"] = "do not want to see";
}

答案 1 :(得分:3)

我在 OnBeforeRequest 函数的开头使用它。它有点复杂 - 它不仅过滤掉指定页面的行,还过滤掉过滤页面生成的任何请求的行。

function RequestContains (uri:String) {
    return oSession.uriContains(uri) || oSession.oRequest.headers.ExistsAndContains("Referer", uri);
}
if (
    false
    ||  RequestContains("url1.aspx")
    ||  RequestContains("url2.aspx")
    ||  RequestContains("url3.aspx")
    ||  RequestContains("url4.aspx")
    ||  RequestContains("url5.aspx")
    ||  RequestContains("service1.svc")
    )
    oSession["ui-hide"] = "true";

我将 false 放在if块的开头,以便我可以轻松安全地注释掉任何 RequestContains 行,如果我暂时需要查看那些请求。

我希望以某种方式将此模式添加到“过滤器”选项卡的UI扩展中,我可以在其中管理这些URL的列表,而无需编辑FiddlerScript。任何人都知道如何在FiddlerScript代码中做到这一点吗?

答案 2 :(得分:0)

我想过滤掉包含静态内容的会话,例如images& JavaScript的。这是我用过的:

static function OnBeforeRequest(oSession: Session) {

    if (
        oSession.uriContains(".png") ||
        oSession.uriContains(".js") ||
        oSession.uriContains(".gif") ||
        oSession.uriContains(".jpg") ||
        oSession.uriContains(".css") ||
        oSession.uriContains(".woff") ||
        oSession.uriContains(".ttf") ||
        oSession.uriContains(".ico")
    ){
        oSession["ui-hide"] = "1";
    }