码迷,mamicode.com
首页 > 其他好文 > 详细

Fiddler忽略捕捉大文件流

时间:2018-08-22 20:42:37      阅读:956      评论:0      收藏:0      [点我收藏+]

标签:音乐   数据   应用   接收   rip   s函数   head   使用   分享   

Fiddler是款非常不错的抓包软件,可以方便的捕捉各种软件发起的HTTP请求,甚至可以在发送给服务器前或响应给应用前修改数据。但是在使用时发现,在开启Fiddler时,在浏览器中下载文件时不会马上弹出文件下载框,过了很长一段时间后才会弹出,音乐播放器在切换歌曲时下一首歌曲也会卡顿很久。在关闭Fiddler后就不会出现这种情况。

观察Fiddler的抓包记录时,发现在浏览器中下载文件时,该记录的Result值为-,当由“-”变成“200”时,浏览器弹出了下载框,由此可以判断在下载文件时Fiddler会先将服务器返回的内容缓存起来,内容接收完毕后再一次性返回给应用程序。这种设计应该是为了方便调试修改数据包用,但是对于下载文件之类的操作就不是非常友好了。

Fiddler提供了非常强大的扩展功能,利用FiddlerScript可以个性化定制自己的需求,如定制化过滤数据包、个性化颜色等等。在右侧的FiddlerScript选项卡或菜单-Rule-Customize Rule可进入FiddlerScript的编辑界面。
技术分享图片

在编辑器中找到搜索OnPeekAtResponseHeaders函数,在函数主体最后加上如下代码:

    if (oSession.ResponseHeaders["Content-Length"] > 102400) {
        oSession.Ignore();
    }

OnPeekAtResponseHeaders是在接收到HTTP头之后执行的方法,通过判断HTTP头中Content-Length长度,如果大于100KB则让fiddler忽略此次抓包的请求。

保存后Fiddler会自动重新加载脚本,在浏览器中下载文档时直接弹出文件下载框,不再有卡顿的现象。

附:FiddlerScript知识库
http://docs.telerik.com/fiddler/KnowledgeBase/FiddlerScript/ModifyRequestOrResponse

Fiddler忽略捕捉大文件流

标签:音乐   数据   应用   接收   rip   s函数   head   使用   分享   

原文地址:https://www.cnblogs.com/lunarflyer/p/9291178.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!