功能介绍(一)
在开始菜单里找,点击Fiddler 4,打开Fiddler。
或者在Fiddler安装目录里找,双击Fiddler.exe,打开Fiddler。
Fiddler主要分为菜单栏、工具栏、监听开关、监听类型、命令行、请求列表、请求与返回相关信息等。
2.1File
File菜单中的命令主要支持完成通过Fiddler来启动和关闭web流量的捕获(capture),也可以加载或存储捕获的流量。
Capture Traffic是个开关,可以控制是否把Fiddler注册为系统代理。当把Fiddler注册为系统代理时,所有依赖于WinINET代理的应用(如IE浏览器和其他浏览器)会把Web请求发送给Fiddler。即勾选后抓包开始。
是用来打开一个新的Fiddler窗口。
用于重新加载之前捕获的以.saz格式保存的文件。
可浏览最近打开过的以.saz格式保存的文件。
子菜单中的选项支持以多种方式把流量保存到文件中;该菜单选项和请求列表中的上下文菜单中的选项相同。
支持导入从其他工具捕获的流量,也支持导入以其他格式存储的流量。
支持把Fiddler捕捉到的Session以多种文件格式保存。
菜单命令会取消把Fiddler注册为系统代理,并关闭Fiddler。
Edit菜单中的绝大多数命令都需要作用于请求列表中当前选中的Session,因此除非选中一个或多个Session,否则大多数命令都不可用。
下面的几个子菜单分别支持复制选中Session的某些信息。
下面的子菜单分别支持从请求列表中删除全部、选择或未选中的Session。
选择请求列表里的所有Sessions。
如在请求列表里删除一些Sessions,点击它可恢复被删除的Sessions。
命令会基于剪贴板上的内容,生成一个或多个模拟的Web Session。
子菜单支持选择一种颜色来标记请求列表中选中的Session。
菜单命令会对某个选中的Web Session解锁,支持使用Inspectors编辑Session的所有请求和响应。
命令会打开Find Session窗口,搜索捕获到的数据流。
触发器控制是否在请求列表中显示图像类Session。
触发器控制是否在请求列表中显示使用CONNECT请求方法的Session。
子菜单控制Fiddler是否会自动在Before Requests或After Responses处设置断点。Ignore Image触发器控制这些断点是否作用于图片请求。
命令会使用配置的脚本编辑器打开当前的FiddlerScript文件,自定义规则。
点击RulesàCustomize Rules
例如:显示请求服务器的ip及系统环境的配置方法
找到如下这段代码:
static function Main() { var today: Date = new Date(); FiddlerObject.StatusText = " CustomRules.js was loaded at: " + today; // Uncomment to add a "Server" column containing the response "Server" header, if present
在这一行后面添加如下代码:
// 显示服务器web环境 FiddlerObject.UI.lvSessions.AddBoundColumn("Server", 50, "@response.server"); // 显示服务器IP地址 FiddlerObject.UI.lvSessions.AddBoundColumn("HostIP", 50, "x-hostIP"); }
设置后重启Fiddler,效果如下:
如果选中Require Proxy Authentication菜单项,所有未提交Proxy-Authorization请求头的请求会返回HTTP/407响应,要求客户端安装证书。
该规则可以用于测试HTTP客户端,确保这些规则在有证书的客户端服务器上可以正常工作。
如果选中Apply GZIP Encoding菜单项,只要请求包含具有gzip标识的Accept-Encoding请求头,就会对除了图片以外的所有响应使用GZIP HTTP进行压缩。
该规则用于测试使用GZIP选项支持的客户端是否真正对内容进行压缩。该选项还支持性能调优,并且计算传输的压缩后的数据流的字节数。
如果选中Remove All Encodings,会删除所有请求和响应的HTTP内容编码和传输编码。
Hide 304s选项会隐藏包含HTTP/304 Not Modified状态的响应的所有Session。
Request Japanese Content选项会把所有请求的Accept-Encoding请求头设置或替换为ja 标识,表示客户端希望响应以日语形式发送。
该选项控制是否会自动响应服务器的HTTP/401或HTTP/407认证需求。
User-Agents子菜单支持把所有请求的User-Agent请求头设置或替换成指定值。
Performance子菜单提供影响Web性能的简单选项。
Simulate Modem Speeds选项,它会设置所有后续Session的Flag。把request-trickle-delay标志位设置成300,所有上传数据将延迟300毫秒/KB。同理,如果把response-trickle-delay标志位设置成150,会使所有下载数据延迟150毫秒/KB。
Disable Caching选项,会删除所有If-None-Match和If-Modified-Since请求头,并添加Pragma:no-cache请求头。选中该选项还会删除响应中的所有Expires头,并把Cache-Control响应头设置成no-cache。该选项无法阻止浏览器重用在选用该选项之前所缓存的响应。在选中该选项后,为了得到最佳结果,最好清空浏览器中的缓存。
Cache Always Fresh选项会自动响应所有包含HTTP/304响应的有条件的HTTP请求,表示客户端缓存是最新的。当访问的站点无法正确地设置缓存失效日期时,该选项可极大地提高性能。尽管有该选项,但在浏览器中按下CTRL+F5键仍可保证重新从服务器加载数据,因为浏览器会对要求强制更新的请求忽略If-Modified-Since和lf-None-Match头。
打开Fiddler Options窗口。
General:常规
Notify me for updates on startup-程序启动时查找更新通知我。
Offer upgrade to Beta versions-提供Beta版本的升级。
Enable IPv6(if available)-启用IPv6(如果可用)。
Participate in the Fiddler Improvement Program-参与Fiddler改进计划。
Enable high-resolution timers-启用高分辨率定时器。
Automatically stream audio & video-音频和视频自动使用流模式。
If protocol violations are observed Do nothing/Warn on critical errors/Warn on all errors-如果观察到违反协议的情况,什么也不做/警告关键错误/警告所有错误。
Systemwide Hotkey-Fiddler的Windows全局热键,默认是 Ctrl + Alt + F,你可以设置成Win + 任意键、Ctrl + Alt + 任意键、Ctrl + Shift + 任意键的组合。
HTTPS:HTTPS设置
Capture HTTPS CONNECTs-捕获HTTPS连接。
Decrypt HTTPS traffic-HTTPS请求解密。
from all processes-来自所有请求
from browsers only-只来自浏览器请求
from non-browsers only-来自非浏览器请求
from remote clients only-只来自远程客户端请求
Ignore server certificate errors(unsafe)-忽略服务器端验证错误。
Check for certificate revocation-检查证书撤销。
Connections:连接
任何一款可以设置HTTP代理的软件都可以使用Fiddler。请先确保主菜单File->Capture Traffic 功能开启了。此选项卡显示Fiddler的连接设置:
Fiddler listens on port-Fiddler监听的端口,默认8888。
Capture FTP requests-捕获FTP请求。
Allow remote computers to connect-允许远程电脑连接。
Reuse client connections-重用客户端连接。
Reuse server connections-重用服务器连接。
Act as system proxy on startup-脚本发生变化时自动重载。
Monitor all connections-监听所有连接。
Use PAC Script-使用PAC脚本。
DefaultLAN-默认局域网。
Bypass Fiddler for URLs that start with-如果URL地址以下列地址开头,会绕过Fiddler。
Gateway:网关
Use System Proxy(recommended)-使用系统代理(推荐)。
Automatically Detect Proxy using WPAD-使用WPAD自动检测代理。
Manual Proxy Configuration-手动设定。
No Proxy-无代理。
Show Current Gateway Info-显示当前网关信息。
Appearance:外观
此选项卡显示Fiddler的外观设置。
Font size-请求列表面板字号选择,单位:磅。
Hide Fiddler when minimized-最小化时隐藏Fiddler。
Always show tray icon-总是显示托盘图标。
Use SmartScroll in Session List-请求列表使用智能滚动。
Reset Session ID counter on Ctrl + X-按下Ctrl + X的时候自动重算session ID。
Set Readonly Color-设置只读颜色。
Scripting:脚本
Automatically reload script when changed:脚本发生变化时自动重载。
References-扩展所连接到的dll、exe文件。
Language-脚本语言,Jscript.NET或C#。
Extensions:扩展
Loaded extensions-已经安装的扩展列表。
Find more extensions-访问Fiddler在线扩展列表页。
Performance:性能
Show Memory panel in status bar-在状态栏中显示内存面板。
Parse WebSocket Messages-解析WebSocket消息。
If client aborts while streaming finish downloading anyway/finish if Session is visible/close the server connection-如果客户端在流传输时中止,仍完成下载/如会话可见将完成/关闭服务器连接。
Run Fiddler at AboveNormal Priority-在最优先的位置运行Fiddler。
Tools:工具
Text Editor-文字编辑器。
FiddlerScriptEditor-Fiddler脚本编辑器。
File Diff Tool-文件比对工具。
打开IE的Internet属性窗口,可以查看局域网的代理服务器设置。
会清空IE和其他应用中所使用的WinINET缓存中的所有文件。
会清空IE和其他应用中所发送的WinINET Cookie。Session的Cookies还是保持不变。
会启动TextWizard窗口,支持对文本进行编码和解码。
比对两个Session之间的差异,只有当选中请求列表中的两个Session时才有效。
重置脚本。
打开http://webdbg.com/sandbox/。
查看IE缓存。
新建一个Session的剪贴板。
直接在Fiddler上配置HOST
点击ToolsàHOSTS,在里面填写自己想要设置的HOST即可。
控制Fiddler工具栏是否可见。
可以设置三种界面布局。
点击Preferences、AutoSave、APITest,在请求与返回项分别显示参数信息、自动保存、API测试三个页签。
点击后,激活请求与返回项Statistics选项卡。
点击后,激活请求与返回项Inspectors选项卡。
点击后,激活请求与返回项Composer选项卡。
点击或CTRL+M快捷键可以最小化Fiddler到系统托盘中。
选择后,Fiddler将一直保持在屏幕前。
控制请求列表项是否水平收缩。
控制当添加新的Session时,Fiddler是否会自动滚动到请求列表的底部。
和F5键都用来刷新请求与返回项Statistics和Inspectors中的Session信息。
打开web浏览器,跳转到Fiddler的帮助页面;按F1键也是这个功能。
打开web浏览器,跳转到Fiddler的图书页面。
打开web浏览器,跳转到Fiddler的讨论组。
打开参考文档的页面。
打开web浏览器,跳转到检测页面。
打开web浏览器,跳转到购买Fiddler企业版页面。
检查当前运行的Fiddler是否为最新版本。
打开web浏览器,跳转到Fiddler想法页面。
显示当前的Fiddler版本信息。
3.1Comments
为指定的HTTP/HTTPS协议添加备注
对指定的HTTP/HTTPS协议进行重播,用于测试修改后的数据的返回。
清除指定的请求,可以是图片等其他的格式,也可以清除全部。
Go用于做调试使用
选择HTTP/HTTPS的协议,设置断点为
,也就是对这条HTTP/HTTPS协议发送出去进行设置断点,设置了断点后,后面的请求将不会运行下去,要点击Go按钮之后才会继续运行。
通过工具栏上的Stream按钮切换两种模式:
1、流模式:实时返回(更接近浏览器本身的行为) 2、缓冲模式:请求的所有数据都准备好后才返回
HTTP/HTTPS的解码功能
将HTTP/HTTPS请求的东西解压出来,方便阅览。
设置要保存的会话的数量,数量越多占用的内存越大。
指定要监听的数据的来源,该功能可以只捕获某个客户端发送的请求,点击Any Process拖动鼠标到指定客户端上。
查找指定的内容
保存当前的内容
屏幕截图
计时器,第一次点击开始、第二次点击结束,鼠标右击清空。
打开指定的浏览器(IE、火狐、chrome)
清除浏览器缓存
对输入的内容进行加密和解密
将请求返回信息栏与主页面分离
搜索信息与帮助
Network显示当前网络状态,在线
Close Toolbar关闭工具栏,如开启View->Show Toolbar
Fiddler想要抓到数据包,要确保Capture Traffic是否开启,点击File –> Capture Traffic。开启后再左下角会有显示,当然也可以直接点击左下角的图标来开启/关闭抓包功能。
开启状态
关闭状态
本文分享自 AllTests软件测试 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!