Fiddler 教程

🌙
手机阅读
本文目录结构
a'xi'he

Fiddler

Fiddler 是一个 http 协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的 http 通讯,设置断点,查看所有的“进出”Fiddler 的数据(指 cookie,html,js,css 等文件)。 Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露 http 通讯还提供了一个用户友好的格式。

Fiddler 介绍

Fiddler 是一个使用 C# 编写的 http 抓包工具。它使用灵活,功能强大,支持众多的 http 调试任务,是 web、移动应用的开发调试利器。

功能特点

  • 1. 截获客户端 HTTP/HTTPS 的请求
  • 2. 可查看截获的请求内容
  • 3. 并可伪造请求内容以及响应结果
  • 4. 测试网站性能
  • 5. 解密 HTTPS 的回话
  • 6. 可拓展插件

同 Httpwatch、Firebug 这些抓包工具一样,Fiddler 够记录客户端和服务器之间的所有 HTTP 请求,可以针对特定的 HTTP 请求,分析请求数据、设置断点等。

但 Fiddler 更为强大的是,它还可以修改请求的数据,甚至可以实现请求自动重定向,从而修改服务器返回的数据。

Fiddler 使用也十分方便。在打开 Fiddler 的时候,它就自动设置好了浏览器的代理,通过改写 HTTP 代理,让数据从它那通过,来监控并且截取到数据。当关闭 Fiddler 的时候,它又自动帮你把代理还原。

Fildder 使用场景

  • 开发环境 host 配置
  • 前后端接口调试
  • 线上 bugfix(可将发布文件代理到本地,快速定位线上 bug)
  • 性能分析和优化(提供请求实际图,以便于做优化)

下载安装

直接去 Fiddler 的官网下载即可。地址:http://www.telerik.com/fiddler

使用

Fiddler 支持断点调试技术,当你在软件的菜单—rules—automatic breakpoints 选项选择 before request, 或者当这些请求或响应属性能够跟目标的标准相匹配,Fiddler 就能够暂停 Http 通讯,并且允许修改请求和响应。这种功能对于安全测试是非常有用的,当然也可以用来做一般的功能测试,因为所有的代码路径都可以用来演习。

通过显示所有的 Http 通讯,Fiddler 可以轻松地演示哪些用来生成一个页面,通过统计页面(就是 Fiddler 左边的那个大框)用户可以很轻松地使用多选,来得到一个 WEB 页面的“总重量”(页面文件以及相关 js,css 等)你也可以很轻松地看到你请求的某个页面,总共被请求了多少次,以及多少字节被转化了。

用户可以加入一个 Inspector 插件对象,来使用。net 下的任何语言来编写 Fiddler 扩展。RequestInspectors 和 ResponseInspectors 提供一个格式规范的,或者是被指定的(用户自定义)Http 请求和响应视图。

另外,通过暴露 HTTP 头,用户可以看见哪些页面被允许在客户端或者是代理端进行缓存。如果要是一个响应没有包含 Cache-Control 头,那么他就不会被缓存在客户端。

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

Wireshark 、HTTPWatch、Fiddler 的介绍

  • Firebug 虽然可以抓包,但是对于分析 http 请求的详细信息,不够强大。模拟 http 请求的功能也不够,且 firebug 常常是需要“无刷新修改”,如果刷新了页面,所有的修改都不会保存。
  • Wireshark 是通用的抓包工具,但是比较庞大,对于只需要抓取 http 请求的应用来说,似乎有些大材小用 (TCP/IP 协议监听)。
  • Httpwatch 也是比较常用的 http 抓包工具,但是只支持 IE 和 firefox 浏览器(其他浏览器可能会有相应的插件),对于想要调试 chrome 浏览器的 http 请求,似乎稍显无力,而 Fiddler2 是一个使用本地 127.0.0.1:8888 的 HTTP 代理,任何能够设置 HTTP 代理为 127.0.0.1:8888 的浏览器和应用程序都可以使用 Fiddler。
  • Fiddler 只能抓 http 和 https 数据包,所以在针对 http 和 https 数据包的抓取上它更加专业。
axihe
axihe

AXIHE / 精选教程

浏览全部教程

HTML

CSS

JS

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili 和抖音。

关注我: Github / 知乎

如果你加我的私人微信,麻烦写上您的 称呼,所在地区,职业,方便我备注,谢谢


本站的微信公众号

阿西河前端教程

Anbang

安邦的私人微信

微信号: yaolushan

Anbang

Bilibili(B站)

朱安邦

Anbang

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

axihe