`
cumtheima
  • 浏览: 255927 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Fiddler系列(1)——Fiddler教程

阅读更多

    Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对开发还是测试来说,都有很大的帮助。

阅读目录

  1. Fiddler的基本介绍
  2. Fiddler的工作原理
  3. 同类的其它工具
  4. Fiddler如何捕获Firefox的会话
  5. Firefox 中使用Fiddler插件
  6. Fiddler如何捕获HTTPS会话
  7. Fiddler的基本界面
  8. Fiddler的统计视图
  9. QuickExec命令行的使用
  10. Fiddler中设置断点修改Request
  11. Fiddler中设置断点修改Response
  12. Fiddler中创建AutoResponder规则
  13. Fiddler中如何过滤会话
  14. Fiddler中会话比较功能
  15. Fiddler中提供的编码小工具
  16. Fiddler中查询会话
  17. Fiddler中保存会话
  18. Fiddler的script系统
  19. 如何在VS调试网站的时候使用Fiddler
  20. Response 是乱码的

Fiddler的基本介绍

Fiddler的官方网站:  www.fiddler2.com

Fiddler官方网站提供了大量的帮助文档和视频教程, 这是学习Fiddler的最好资料。

Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展

你对HTTP 协议越了解, 你就能越掌握Fiddler的使用方法. 你越使用Fiddler,就越能帮助你了解HTTP协议.

Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具

Fiddler的工作原理

Fiddler 是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1, 端口:8888. 当Fiddler会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。 解决的办法是重新启动下Fiddler.

 

同类的其它工具

同类的工具有: httpwatch, firebug, wireshark

 

Fiddler 如何捕获Firefox的会话

能支持HTTP代理的任意程序的数据包都能被Fiddler嗅探到,Fiddler的运行机制其实就是本机上监听8888端口的HTTP代理。 Fiddler2启动的时候默认IE的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置的,所以将Firefox的代理改为 127.0.0.1:8888就可以监听数据了。

Firefox 上通过如下步骤设置代理

点击: Tools -> Options,  在Options 对话框上点击Advanced tab - > network tab -> setting.

 

Firefox 中安装Fiddler插件

修改Firefox 中的代理比较麻烦, 不用fiddler的时候还要去掉代理。 麻烦

推荐你在firefox中使用fiddler hook 插件, 这样你非常方便的使用Fiddler获取firefox中的request 和response

当你安装fiddler后, 就已经装好了Fiddler hook插件, 你需要到firefox中去启用这个插件
打开firefox   tools->Add ons -> Extensions 启动 FiddlerHook

 

 

Fiddler如何捕获HTTPS会话

默认下,Fiddler不会捕获HTTPS会话,需要你设置下, 打开Fiddler  Tool->Fiddler Options->HTTPS tab

 选中checkbox, 弹出如下的对话框,点击"YES"

点击"Yes" 后,就设置好了

Fiddler的基本界面

 看看Fiddler的基本界面

 

Inspectors tab下有很多查看Request或者Response的消息。 其中Raw Tab可以查看完整的消息,Headers tab 只查看消息中的header. 如下图

 

Fiddler的HTTP统计视图

通过陈列出所有的HTTP通信量,Fiddler可以很容易的向您展示哪些文件生成了您当前请求的页面。使用Statistics页签,用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。

选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化

QuickExec命令行的使用

Fiddler的左下角有一个命令行工具叫做QuickExec,允许你直接输入命令。

常见得命令有

help  打开官方的使用页面介绍,所有的命令都会列出来

cls    清屏  (Ctrl+x 也可以清屏)

select  选择会话的命令

?.png  用来选择png后缀的图片

bpu  截获request

 

Fiddler中设置断点修改Request

[作者:小坦克]  Fiddler最强大的功能莫过于设置断点了,设置好断点后,你可以修改httpRequest 的任何信息包括host, cookie或者表单中的数据。设置断点有两种方法

第一种:打开Fiddler 点击Rules-> Automatic Breakpoint  ->Before Requests(这种方法会中断所有的会话)

如何消除命令呢?  点击Rules-> Automatic Breakpoint  ->Disabled

第二种:  在命令行中输入命令:  bpu www.baidu.com   (这种方法只会中断www.baidu.com)

如何消除命令呢?  在命令行中输入命令 bpu

 

看个实例,模拟博客园的登录, 在IE中打开博客园的登录页面,输入错误的用户名和密码,用Fiddler中断会话,修改成正确的用户名密码。这样就能成功登录

1. 用IE 打开博客园的登录界面  http://passport.cnblogs.com/login.aspx
2. 打开Fiddler,  在命令行中输入bpu http://passport.cnblogs.com/login.aspx
3. 输入错误的用户名和密码 点击登录
4. Fiddler 能中断这次会话,选择被中断的会话,点击Inspectors tab下的WebForms tab 修改用户名密码,然后点击Run to Completion 如下图所示。
5. 结果是正确地登录了博客园

 

 

Fiddler中设置断点修改Response

当然Fiddler中也能修改Response

第一种:打开Fiddler 点击Rules-> Automatic Breakpoint  ->After Response  (这种方法会中断所有的会话)

如何消除命令呢?  点击Rules-> Automatic Breakpoint  ->Disabled

第二种:  在命令行中输入命令:  bpafter www.baidu.com   (这种方法只会中断www.baidu.com)

如何消除命令呢?  在命令行中输入命令 bpafter,

具体用法和上节差不多,就不多说了。

Fiddler中创建AutoResponder规则

Fiddler 的AutoResponder tab允许你从本地返回文件,而不用将http request 发送到服务器上。

看个实例. 1. 打开博客园首页,把博客园的logo图片保存到本地,并且对图片做些修改。

2. 打开Fiddler 找到logo图片的会话, http://static.cnblogs.com/images/logo_2012_lantern_festival.gif,  把这个会话拖到AutoResponer Tab下

3. 选择Enable automatic reaponses 和Unmatched requests passthrough

4. 在下面的Rule Editor 下面选择 Find a file... 选择本地保存的图片.  最后点击Save 保存下。

5.  再用IE博客园首页, 你会看到首页的图片用的是本地的。

 



Fiddler中如何过滤会话

每次使用Fiddler, 打开一个网站,都能在Fiddler中看到几十个会话,看得眼花缭乱。最好的办法是过滤掉一些会话,比如过滤掉图片的会话. Fiddler中有过滤的功能, 在右边的Filters tab中,里面有很多选项, 稍微研究下,就知道怎么用。

 

Fiddler中会话比较功能

选中2个会话,右键然后点击Compare,就可以用WinDiff来比较两个会话的不同了 (当然需要你安装WinDiff)

 

Fiddler中提供的编码小工具

点击Fiddler 工具栏上的TextWizard,  这个工具可以Encode和Decode string.

Fiddler中查询会话

用快捷键Ctrl+F 打开 Find Sessions的对话框,输入关键字查询你要的会话。 查询到的会话会用黄色显示

Fiddler中保存会话

有些时候我们需要把会话保存下来,以便发给别人或者以后去分析。  保存会话的步骤如下:

选择你想保存的会话,然后点击File->Save->Selected Sessions

Fiddler的script系统

Fiddler最复杂的莫过于script系统了 官方的帮助文档: http://www.fiddler2.com/Fiddler/dev/ScriptSamples.asp

首先先安装SyntaxView插件,Inspectors tab->Get SyntaxView tab->Download and Install SyntaxView Now... 如下图

 

安装成功后Fiddler 就会多了一个Fiddler Script tab, 如下图

在里面我们就可以编写脚本了, 看个实例 让所有cnblogs的会话都显示红色。

把这段脚本放在OnBeforeRequest(oSession: Session) 方法下,并且点击"Save script"

     if (oSession.HostnameIs("www.cnblogs.com")) {
            oSession["ui-color"] = "red";
        }

这样所有的cnblogs的会话都会显示红色

 

如何在VS调试网站的时候使用Fiddler

我们在用visual stuido 开发ASP.NET网站的时候也需要用Fiddler来分析HTTP, 默认的时候Fiddler是不能嗅探到localhost的网站。不过只要在localhost后面加个点号,Fiddler就能嗅探到。

例如:原本ASP.NET的地址是 http://localhost:2391/Default.aspx,  加个点号后,变成 http://localhost.:2391/Default.aspx 就可以了

 

第二个办法就是在hosts文件中加入  127.0.0.1  localsite

如何你访问http://localsite:端口号   。  这样Fiddler也能截取到了。

 

Response 是乱码的

有时候我们看到Response中的HTML是乱码的, 这是因为HTML被压缩了, 我们可以通过两种方法去解压缩。

1. 点击Response Raw上方的"Response is encoded any may need to be decoded before inspection. click here to transform"

2. 选中工具栏中的"Decode"。  这样会自动解压缩。

1
0
分享到:
评论

相关推荐

    Fiddler2————————抓包工具

    Fiddler2 的

    Fiddler——如何使用Fiddler

    Fiddler——如何使用FiddlerFiddler——如何使用Fiddler; Fiddler——如何使用FiddlerFiddler——如何使用FiddlerFiddler——如何使用FiddlerFiddler——如何使用FiddlerFiddler——如何使用Fiddler Fiddler——...

    抓包整理外篇fiddler————了解工具栏[一].doc

    抓包整理外篇fiddler————了解工具栏[一].doc

    Fiddler 项目管理工具——图形化配置 Fiddler 映射替换规则。原理通过生成自定义脚本快速配置 Fiddler.zip

    Fiddler 项目管理工具——图形化配置 Fiddler 映射替换规则。原理通过生成自定义脚本快速配置 Fiddler

    fiddler抓包APP操作步骤.docx

    1. 打开 Fiddler,点击工具栏中的 Tools——>Fiddler Options…,切换到 HTTPS 选项卡,勾选 Capture HTTPS CONNECTs,勾选 Decrypt HTTPStraffic,会弹出安装证书的提示,一路点是或确定安装即可。 2. 重启 Fiddler...

    fiddler抓包教程

    ### Fiddler抓包教程详解 #### 一、Fiddler基本介绍 Fiddler是一款极为强大且实用的Web调试工具,它能够捕捉并记录客户端与服务器之间所有的HTTP及HTTPS请求,为用户提供了一种直观的方式来监视、调试以及修改网络...

    Fiddler 中文版.rar

    **Fiddler中文版——网络调试利器** Fiddler是一款强大的网络调试工具,它能够捕获HTTP/HTTPS协议的网络流量,帮助开发者、测试人员以及普通用户深入理解网络交互过程,排查网页加载问题,优化应用性能。Fiddler...

    Fiddler之web调试工具

    **Fiddler——Web调试利器** Fiddler是一款强大的Web调试工具,由Telerik公司开发,主要用于捕获、分析和修改HTTP(S)通信数据。它能够帮助开发者、测试人员以及网络安全专家深入理解网络流量,从而解决网页应用的...

    Fiddler 和 Wireshark抓包教程合集.docx

    本文将深入探讨两个非常流行的抓包软件——Fiddler和Wireshark,帮助你理解和掌握它们的基本功能和高级技巧。 ### Fiddler **1. Fiddler简介** Fiddler是由Telerik公司开发的一款免费的Web调试代理,适用于Windows...

    Fiddler Web Debugger(5.0.20192.25092)中文版.zip

    《Fiddler Web Debugger——网络调试利器》 Fiddler Web Debugger是一款强大的网络抓包工具,主要用于HTTP/HTTPS协议的调试。它的版本号为5.0.20192.25092,特别推出了中文版,使得国内用户在使用过程中能够更加...

    Fiddler 2.3.5.2 HTTP调试工具

    —————————————————— 软件名称:Fiddler v2.3.5.2 软件类别:HTTP调试工具 运行环境:Win2003, WinXp, Win2000, Win9x 授权方式:免费 软件介绍: Fiddler 是一款HTTP调试工具 ,可以帮您记录,...

    Fiddler Web Debugger 5.0 中文版(修正第六版)

    1. Xceed.Zip.v5.4.dll、Xceed.Compression.v5.4.dll、Xceed.FileSystem.v5.4.dll:这些都是Xceed公司的库文件,用于处理压缩和文件系统操作。Fiddler可能使用这些库来读取或打包HTTP响应中的压缩内容,比如GZIP或...

    fiddler——js调节器

    开发人员不需要和前端协调,直接用这个工具调节服务器上的js文件,能将压缩后的js文件实时更新。

    Fiddler4 以及证书https

    1、首先确保安装的 Fiddler 是较新的版本,比较老的版本可能会出现安装不上fiddler证书生成器的问题。 2、关闭Fiddler。 3、下载并安装Fiddler证书生成器。点击打开链接 4、打开Fiddler,点击工具栏中的Tools——...

    抓包工具fiddler

    描述虽然简洁,但暗示了Fiddler的核心功能——捕获网络流量并提供可视化界面。Fiddler的界面清晰,分为多个面板,如“会话”面板展示每个HTTP请求和响应的详细信息,“标头”面板显示请求和响应头,而“文本”或...

    LinrFiddler:Fiddler 项目管理工具——图形化配置 Fiddler 映射替换规则。原理:通过生成自定义脚本,快速配置 Fiddler

    通过生成自定义脚本,快速配置 Fiddler: 文件及目录映射; 代码注入; 请求忽略等; Fiddler 项目管理; 请求延时; 列出最近修改的文件; 下载 Download 请在 下载 2018.5 beta 视频演示 Video 使用方法 How to ...

    抓包神器fiddler

    **Fiddler——网络调试与抓包神器** Fiddler是一款强大的网络调试工具,由Telerik公司开发,广泛应用于API调试、网页性能分析以及网络问题排查。它能够捕获HTTP和HTTPS流量,帮助开发者和测试人员深入理解网络交互...

    Fiddler抓包工具安装包

    本安装包包含Fiddler的核心组件——FiddlerSetup.exe,用于在计算机上安装此工具。 一、Fiddler的主要功能 1. 抓取HTTP/HTTPS流量:Fiddler能够捕获系统产生的所有HTTP和HTTPS请求,包括浏览器、手机应用等,帮助...

    Fiddler学习笔记(三)——使用Fiddler进行弱网测试

     使用Fiddler主要通过软件限速来模拟弱网测试,Fiddler限速是以网络延迟的方式实现的,网络延迟时间*网速=传输字节数,操作步骤如下,勾选simulate modem speeds即可模拟网络限速 上述勾选后,默认为请求数据每1kb...

    Fiddler-http请求和响应导出

    **Fiddler——HTTP请求与响应导出** Fiddler是一款强大的网络调试工具,它能够捕获、查看、修改在浏览器和服务器之间传输的HTTP(S)数据。在IT行业中,理解并熟练运用Fiddler是提升开发和测试效率的重要技能。下面...

Global site tag (gtag.js) - Google Analytics