FiddlerFilters指南

发布时间:2023-05-19

一、FiddlerFilters是什么?

FiddlerFilters是一个用于过滤Fiddler请求和响应的工具,它可以在Fiddler运行时自动执行,使您可以通过不同的Filter规则,对数据进行分类、操作和过滤,从而更好地进行数据分析和调试。FiddlerFilters提供了非常灵活的匹配规则,您可以通过选项卡、操作符、正则表达式等方式,实现快速高效的Filter。

二、FiddlerFilters的使用场景

FiddlerFilters的使用场景非常广泛,下面列举了几个常见的使用场景:

  1. 过滤垃圾数据:在进行数据分析时,我们不希望看到很多无意义的数据(图片、广告、无用请求等),这个时候可以使用Filter过滤掉这些数据,只留下有价值的信息。
  2. 分类数据:可以将请求/响应进行分类,便于数据分析和调试。比如将所有JavaScript的请求都分类到一起,方便查看JavaScript代码的执行。
  3. 替换数据:可以使用Filter将Fiddler请求和响应数据中的某些内容或参数进行替换,方便进行测试和调试。

三、FiddlerFilters使用方法

下面文章将从Filter选项卡、操作符、正则表达式三个方面详细介绍FiddlerFilters的使用方法。

四、Filter选项卡

Filter选项卡是使用FiddlerFilters最常见的方式,它提供了几个常见的Filter选项(URL、Method、ResponseCode、ContentType、Protocol等)来快速过滤请求数据。您可以选择一个或多个选项进行数据过滤。 下面是一个简单的示例,展示如何使用Filter选项卡来过滤请求数据:

//仅显示请求URL中包含“/api”的请求数据
if (oSession.uriContains("/api")) {
    //可以对数据进行操作或者记录等操作
    //...
}

五、操作符

除了Filter选项卡,FiddlerFilters还提供了一些操作符来快速过滤数据,可以用来组合多个规则以实现更精细的Filter效果。例如:

  1. &&(与)操作符:组合多个规则,只有当所有规则都匹配时,才会进行Filter操作。
//仅显示URL中包含“/api”,请求方式为“POST”的请求数据
if (oSession.uriContains("/api") && oSession.isRequestBody && oSession.HTTPMethodIs("POST")) {
    //...
}
  1. ||(或)操作符:当两个或多个规则中的任何一个匹配时,就会进行Filter操作。
//仅显示请求URL中包含“/api”或请求URL中包含“/login”的请求数据
if (oSession.uriContains("/api") || oSession.uriContains("/login")) {
    //...
}

六、正则表达式

正则表达式是一种非常强大的过滤工具,FiddlerFilters也支持使用正则表达式来进行Filter。下面是一个简单的示例:

//仅显示请求URL中包含“/api”的请求数据,使用正则表达式匹配
if (oSession.uriMatch(/\/api\//gi)) {
    //...
}

使用正则表达式可以更灵活地匹配请求数据,如果您掌握了正则表达式的使用,就可以实现非常复杂的Filter操作。

七、总结

本文介绍了FiddlerFilters的各种使用方式,包括Filter选项卡、操作符、正则表达式等。通过灵活使用FiddlerFilters,您可以更好地进行数据分析和调试,提高工作效率。