【问题标题】:Filtering fiddler to only capture requests for a certain domain过滤提琴手以仅捕获特定域的请求
【发布时间】:2010-10-19 07:02:42
【问题描述】:

我不确定如何修改 CustomRules.js 文件以仅显示对某个域的请求。

有谁知道如何做到这一点?

【问题讨论】:

    标签: c# .net windows fiddler


    【解决方案1】:

    这很容易做到。 在过滤器选项卡上,单击“仅在过滤器包含时显示,然后键入您的域。

    【讨论】:

    • 现在应该将其视为答案。连同 Eric 对stackoverflow.com/a/746776/157552 的评论
    • 这只是简单的方法。 @Marc Gravell 是技术方法。以编程方式使用提琴手时,我将无法打开文件管理器对话框。编辑文件并添加这是我一直在寻找的方式。
    • 我无法让这种方法与 fiddler 打印的会话一起作为反向代理的一部分使用
    • 一旦添加了主机并且该框变为黄色并带有消息Changes not yet saved. 然后您必须单击该实际消息文本以保存详细信息(这一点都不明显!)。
    【解决方案2】:

    编辑

    事实证明这很容易;编辑OnBeforeRequest 以添加:

    if (!oSession.HostnameIs("www.google.com")) {oSession["ui-hide"] = "yup";} 
    

    过滤到谷歌,例如。


    (原答案) 老实说,我不知道这是否是 Fiddler 内置的东西(我从未尝试过),但Wireshark 肯定会很容易做到这一点 - 当然,你会得到不同的数据(特别是对于 SSL) - 所以YMMV。

    【讨论】:

    • 有时您需要按路径或查询进行过滤,以捕获某些请求而不是整个活动。我在文档上找到了。 if (oSession.PathAndQuery=="/version1.css") { oSession.PathAndQuery="/version2.css"; }. 先使用 HostnameIS 然后再使用 PathAndQuery 您可以只过滤 1 个资源。我对提琴手印象深刻。不是网络玩具。
    【解决方案3】:

    我的回答有点类似于@Marc Gravels,但是我更喜欢通过包含一些特定字符串的 url 来过滤它。

    1. 您将需要fiddler script - it's an add-on to fiddler
    2. 安装后转到提琴手脚本标签并将以下内容粘贴到OnBeforeRequest 函数中。 (截图如下)

       if (oSession.url.Contains("ruby:8080") || oSession.url.Contains("localhost:53929")) {  oSession["ui-hide"] = "yup";    }
      

    通过这种方式,您可以按 url 的任何部分进行过滤,无论是端口主机名还是其他。

    希望这可以为您节省一些时间。

    【讨论】:

    • 对于过滤掉浏览器链接 url 特别有用。仅按主机过滤不会做到这一点。
    【解决方案4】:

    您可以使用 fiddler 中的过滤器选项卡过滤请求。请看下面的截图。如果您使用的是 google chrome,请务必在 fiddler(来自 google chrome)中使用正确的进程 ID。

    【讨论】:

      【解决方案5】:

      Fiddler 网站有a cookbook of a whole bunch of things that you can do with CustomRules.js,包括如何做到这一点:)

      【讨论】:

      • 是的,还请记住,您可以在当前版本的 Fiddler 中使用“过滤器”选项卡来实现相同目的。
      • 此链接已弃用。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多