Fiddler 教程

Fiddler 流模式(Stream)

在 Fiddler 中,支持两种模式,分别是缓冲模式(Buffer)和流模式(Stream)。

两者的区别

Fiddler 使用缓冲模式,可控制服务器的响应,如:对响应的数据进行修改等等。

Fiddler 使用流模式不能控制服务器的响应,服务器响应什么数据就展示什么数据,流模式更接近于浏览器本身真实的行为。

缓冲模式

默认情况下,Fiddler 使用缓冲模式 (Buffering Mode) 操作绝大多数响应。在缓冲模式中,Fiddler 会在数据返回客户端之前完全的缓冲 HTTP(S) 响应。这让 Fiddler 用户可以在客户端接收到响应之前有机会修改响应内容。如下图:

流模式

使用流模式时,Fiddler 一旦从远程服务器拿到响应,会立即返回响应给客户端。这对较低网络时间设定来说是非常重要的,因为多数 Web 浏览器 (IE、Firefox 等) 都会在尚未完全下载 HTML 页的时候就开始解析它,并开始并行下载需要的资源 (如 CSS、JS 文件),即使远程服务器还没完全传输该 HTML。某种意义上,这可能会带来略微的性能提升。

流模式在其他的一些场景下也非常有用,尤其是访问 Internet 广播、音乐类站点时,该站点会使用一个永不结束的 MP3 数据流传递给客户端。一个音频流,从字面上说,应该是永远不会结束的,所以 Fiddler 尝试去完整的缓冲它几乎不可能。

自动流模式

Fiddler 会自动使用流模式处理 video/* 和 audio/* 类型响应。你可以开启或关闭这种自动处理,点击主菜单 Tools -> Fiddler Options 的常规选项卡,取消 “Automatically stream audio and video” 的勾选。如下图:

开启流模式

开启流模式非常简单,直接点击工具栏的“Stream”按钮即可。如下图:

【小提示】

在流模式中,对响应设置的断点将不会被触发,对响应的 header 和 body 的改变在客户端也无法看到。

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号