抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

Fiddler Classic:
The Original and Free Web Debugging Proxy Tool Exclusively for Windows
The community-trusted free Windows-only tool that logs HTTP(s) network traffic.

安装Fiddler

Fiddler Classic是Windows上一款非常好用的http抓包工具
点击下载安装https://www.telerik.com/download/fiddler

下载前需要填写调查问卷,随便填写即可点击下载
下载Fiddler

抓取https请求数据

点击Tools->Options打开设置

勾选图示选项,勾选确认后会弹出一些窗口,都点击OK即可

模拟器抓包配置

需要抓取APP的http请求,一般需要安装安卓模拟器,可以下载逍遥安卓模拟器,注意需要使用安卓5.1版本

配置fiddler开启远程连接

模拟器抓包需要先配置Fiddler允许远程连接,打开Tools->options->connections,点击勾选Allow remote computers to connect

安装证书

为了抓取模拟器上的https请求,需要在模拟器上安装证书,在模拟器上访问http://宿主机IP:8888打开Fiddler证书安装页面,点击图示链接下载并安装

配置代理

在模拟器WiFi设置中配置代理,代理服务器填写宿主机IP,端口填写Fiddler的默认端口8888即可

配置Fiddler显示IP

有时我们需要知道域名解析后对应的服务器IP地址,使用如下方法配置便可展示

点击FiddlerScript Tab栏打开自定义脚本,搜索Main()方法,在图示位置添加代码

FiddlerObject.UI.lvSessions.AddBoundColumn("ServerIP",120,"X-HostIP");

显示IP

配置Fiddler显示响应时长

点击FiddlerScript Tab栏打开自定义脚本,搜索Handlers,将以下代码粘贴至图示位置

public function BeginRequestTime(oS: Session)
{
    if (oS.Timers != null)
    {
        return oS.Timers.ClientBeginRequest.ToString();
    }
    return String.Empty;
}

public static BindUIColumn("Time Taken") function CalcTimingCol(oS: Session)
{
    var sResult = String.Empty;
    if ((oS.Timers.ServerDoneResponse > oS.Timers.ClientDoneRequest))
    {
    sResult = (oS.Timers.ServerDoneResponse - oS.Timers.ClientDoneRequest).ToString();
    }
    return sResult;
}

显示响应时长

安装Willow

Willow是Fiddler的插件,可以实现一键切换hosts并高亮展示,非常方便
下载地址:https://github.com/QzoneTouch/commonWidget/releases/download/1.5.2/WillowSetup-1.5.2.zip

下载完成后将压缩包内所有文件解压至Fiddler安装的根目录,重启Fiddler生效。

AutoResponder使用

Fiddler AutoResponder可以通过定义规则,实现将任意请求重定向至我们想要的地址。可以实现不访问服务器自定义响应数据。

在下图的例子中,使用正则匹配将www.google.com的请求重定向至localhost

Match: REGEX:(?i)https://www.google.com/(.*)
Rule: https://localhost/($1)

更多规则可以参考fiddler官网:AutoResponder Reference

部分站点提示https证书过期或显示灰色Tunnel to xxx:443

这种情况一般是这台电脑安装使用Fiddler抓包已经很久了,Fiddler为指定站点颁发的证书过期了,此时只需要清除一下证书即可

步骤如下:

  1. options->https窗口中点击actions按钮
  2. 点击Reset All Certificates清除证书
  3. 点击Open Windows Certificate Manager打开Windows系统证书管理
  4. 找到个人证书,将个人证书文件夹内由DO_NOT_TRUST_FiddlerRoot颁发的证书全部删除,可以执行Ctrl + A全选,再右键点击删除

评论