想要 浏览更多Fiddler内容:请点击进入Fiddler官方文档
十六、问题:未捕获发送到http:// localhost或http://127.0.0.1的流量
十八、问题我没有看到任何HTTPS流量 - 我只看到“CONNECT”隧道。
十九、问题调用WebServices时,我收到System.NET.WebException“底层连接已关闭”。
-
在Fiddler中,单击“ 文件”菜单。
-
确保启用捕获流量。
捕获的Web流量会话将显示在“ 会话列表”中。
查看WEB会话摘要:
要查看Fiddler ID号,结果代码,协议,主机名,内容类型,URL,正文大小,缓存值,原始进程,自定义注释以及Web会话的任何自定义列:
-
在Web会话列表中查找Web会话。
查看Web会话统计信息:
要查看Web sesion的性能统计信息:
-
单击Web会话列表中的Web会话。
-
单击Statistics选项卡。
查看Web会话内容:
要以各种格式查看Web会话的内容:
-
单击Web会话列表中的Web会话。
-
单击“ 检查器”选项卡。
可视化会话转移时间轴:
要查看一个或多个Web会话的传输时间轴的瀑布图,请执行以下操作:
-
在Web会话列表中选择一个或多个Web会话。按住CTRL键并单击“ Web会话列表”中的会话以选择多个会话。
-
单击“ 时间轴”选项卡。
要查看Fiddler ID号,结果代码,协议,主机名,内容类型,URL,正文大小,缓存值,原始进程,自定义注释以及Web会话的任何自定义列:
-
在Web会话列表中查找Web会话。
要查看Web sesion的性能统计信息:
-
单击Web会话列表中的Web会话。
-
单击Statistics选项卡。
要以各种格式查看Web会话的内容:
-
单击Web会话列表中的Web会话。
-
单击“ 检查器”选项卡。
要查看一个或多个Web会话的传输时间轴的瀑布图,请执行以下操作:
-
在Web会话列表中选择一个或多个Web会话。按住CTRL键并单击以选择多个会话。
-
单击“ 时间轴”选项卡。
搜索捕获的请求和响应:
-
单击编辑>查找会话...并在对话框中指定搜索选项。
-
在QuickExec框中输入命令。
指导您的用户下载并使用FiddlerCap,这是Fiddler的简化版本,仅用于跟踪捕获。
将Accept标头和Download Initiator列添加到Web
Sessions List
-
启用
FEATURE_DOWNLOAD_INITIATOR_HTTP_HEADER
功能控制键。
-
在QuickExec框中输入以下命令:
cols add @request.Accept cols add @request.X-Download-Initiator
-
单击规则>自定义规则。
-
滚动到静态函数Main()块,并在以下内容中添加以下行:
FiddlerObject.UI.lvSessions.AddBoundColumn("Accept", 50, "@request.Accept"); FiddlerObject.UI.lvSessions.AddBoundColumn("Reason", 50, "@request.X-Download-Initiator");
-
要选择父会话(对所选会话的Referer标头中指定的URL的最新请求):
-
在Web会话列表中选择一个会话。
-
按P。
-
要选择所有子会话(以后对所选会话的Referer头中指定的URL的请求):
-
在Web会话列表中选择一个会话。
-
按C键。
重新排列列
-
要重新排序列,请将列标题向左或向右拖动。
-
要调整列的大小,请拖动列标题的边缘。
添加自定义列
使用这些方法:
-
使用“ 自定义列”菜单。
- 右键单击列的顶部,然后选择“ 自定义列...”。
- 单击“ 收集”下拉菜单,然后选择将填充列的集合。
- 输入将填充列的集合成员的名称以及列的标题。
-
使用QuickExec添加临时列
在QuickExec框中键入以下命令:
cols add [Title] FlagName
使用QuickExec添加的列将在Fiddler下次启动时删除。有关QuickExec列命令的更多信息,请参阅QuickExec参考。
-
从IFiddlerExtension调用AddBoundColumn方法
从[IFiddlerExtension] 调用AddBoundColumn方法,将getColumnStringDelegate作为第三个参数传递。
-
Fiddler将获得一个名为Privacy的新顶级菜单。
-
确保选中“ 隐私>已启用”。
该加载项将向会话列表添加“ 隐私信息”列,并将标记设置cookie的HTTP / HTTPS响应。
评估随这些cookie一起出现的任何P3P语句将改变会话的背景颜色:
- 绿色会议发送了令人满意的P3P政策。
- 黄色会话设置没有P3P策略的cookie。
- Orange会话发送P3P策略,该策略不允许在第三方上下文中使用cookie。
- 红色会话发送无效的P3P策略。
比较两个网络会话
- 在Web会话列表中选择两个会话。
- 右键单击其中一个会话。
- 单击上下文菜单中的比较。
默认情况下,这将尝试启动WinDiff或WinMerge来比较流量。
提示:
- 如果您正在使用WinDiff,则可以通过在单击“ 比较”菜单项时按住ALT或SHIFT使其打破标点符号的每一行。
- 如果您不希望Fiddler在保存文件时尝试重新组织标题和URL以简化差异 ,则可以将fiddler.differ.ultradiff 首选项设置为False。
更改默认文本比较工具
- 单击工具>提琴选项>工具。
- 输入工具可执行文件的位置。
设置自定义命令行参数
-
提供工具的路径:
PREFS SET fiddler.config.path.differ "C:Program Files (x86)Microsoft Visual Studio 11.0Common7IDEdevenv.exe"
-
配置命令行以匹配工具所需的内容:
PREFS SET fiddler.differ.Params "/diff "{0}" "{1}""
-
(可选)设置备用命令行,如果在调用比较时按住ALT或SHIFT,将调用该命令行:
PREFS SET fiddler.differ.ParamsAlt "/diff /binary "{0}" "{1}""
一次比较多个会话
通过流量差异扩展,您可以一次比较多个会话
要检查DataURI对象:
-
从Fiddler或任何其他来源将DataURI复制到剪贴板。
-
单击编辑>将文件粘贴为会话 ]。
Fiddler将解析DataURI并在Web Sessions列表中为它创建一个新的Session 。
-
使用Fiddler检查器检查生成的对象。
解决方案:查看您的提琴手配置
-
查看“ 配置客户端”部分。
-
如果适用,请查看配置浏览器或配置.NET应用程序页面。
-
如果适用,请查看“ 监控到localhost的流量”页面。
-
确保一个或多个过滤器不会阻止流量。
-
如果适用,请查看“ 监视器拨号”或“VPN连接”页面。
十六、问题:未捕获发送到http:// localhost或http://127.0.0.1的流量
Internet Explorer和.NET Framework是硬编码的,不通过任何代理发送对Localhost的请求,作为代理,Fiddler不会收到此类流量。
-
Release Candidate版本中的Internet Explorer 9更改了此行为。IE9 RC允许Fiddler代理发送到localhost或127.0.0.1的流量,无需您执行其他步骤。
-
您永远不应该遇到Firefox的“Localhost流量未捕获”问题。当Fiddler处于“捕获”模式时,Firefox的FiddlerHook附加组件会从“旁路代理”列表中删除“localhost”。
解决方案1:使用计算机名称或主机名
最简单的解决方法是使用您的计算机名称作为主机名而不是Localhost或127.0.0.1。例如,而不是点击:
http://localhost:8081/mytestpage.aspx
而是访问:
http://machinename:8081/mytestpage.aspx.
解决方案2:使用http://ipv4.fiddler
使用http://ipv4.fiddler命中IPv4适配器上的localhost。这适用于Visual Studio测试Web服务器(代号:Cassini),因为测试服务器只侦听IPv4环回适配器。使用http://ipv6.fiddler命中IPv6适配器上的localhost,或使用http://localhost.fiddler使用Host头中的“localhost”命中localhost。最后一个选项应该最适合IIS Express。
解决方案3:更新规则文件
-
更新您的规则文件,如下所示:
static function OnBeforeRequest(oSession:Fiddler.Session){if(oSession.HostnameIs(“MYAPP”)){oSession.host =“127.0.0.1:8081”; }}
-
请求http:// myapp,它将充当127.0.0.1:8081的别名。
我在Web会话列表中看到了一些流量,但是某些流量(例如,来自特定程序)似乎缺失了。
解决方案:检查流量过滤器
检查是否启用了任何流量过滤器。
-
检查状态栏
-
检查工具栏中的Process Filter。
- 选中过滤器选项卡。
-
如果您已经编写或设置了任何Fiddler规则,请检查它们。
-
点击帮助>排除过滤器...。当您这样做时,否则将隐藏的流量将以删除线字体显示。“ 注释”列将显示哪个Fiddler过滤器负责尝试隐藏流量。
十八、问题我没有看到任何HTTPS流量 - 我只看到“CONNECT”隧道。
解
默认情况下禁用HTTPS流量解密。了解有关使用Fiddler2解密HTTPS流量的详细信息。
十九、问题调用WebServices时,我收到System.NET.WebException“底层连接已关闭”。
解
通过Fiddler调试.Net应用程序时,您可能会看到System.Net.WebException,并显示消息“底层连接已关闭:服务器已关闭预期保持活动状态的连接”。
这是您的应用程序中的错误(它应该处理此类异常)。
注意:由于增强的客户端连接重用支持,Fiddler 2.2.8.5及更高版本中不太可能出现此问题。
解
确保在IE的工具> Internet选项>高级选项卡或您选择的浏览器中的类似设置中选中“通过代理服务器使用HTTP1.1” 。