Fiddler的工作原理与主菜单介绍(一)

1.简介:

官网:https://www.telerik.com/fiddler

Fiddler是比较好用的web代理调试工具之一,它能记录并检查所有客户端与服务端的HTTP/HTTPS请求,能够设置断点,篡改及伪造Request/Response的数据,修改hosts,限制网速,http请求性能统计,简单并发,接口测试,辅助自动化测试,等等。现在抓包工具成为测试人员的必备使用工具,开发人员也在普遍使用,进行问题的定位分析,是非常有助于工作的一款工具。

2.Fiddler工作原理

先来看看fiddler未参与时,一个普通的客户端与服务端的请求流程图:浏览器访问一个网站:87testing.com,浏览器给webserver发送一个Request,webserver接收到Request后进行处理,返回给浏览器Response,然后浏览器解析Response中的html,展现网页给用户。如图

 

Fiddler工作于七层中的应用层,在client与webserver之间以代理服务器的形式存在,启动fiddler后会监听本地127.0.0.1的8888端口(默认端口),IE/Chrome浏览器会自动设置局域网代理(Firefox代理是独立的,需要单独设置),如图:

 

此时,fiddler就作为代理服务器,浏览器访问87testing.com的流程:浏览器给webserver发送一个Request,代理服务器fiddler接收到Request,fiddler将Request发送到webserver,webserver接收到Request后进行处理,Response到代理服务器fiddler,Fiddler将Response返回到浏览器,如图:

 

3.主菜单介绍

File菜单

File菜单中的命令主要支持完成通过Fiddler来启动和停止web流量的捕获(capture),也可以加载或存储捕获的流量

 

(1)Capture Traffic是个开关,可以控制是否把Fiddler注册为系统代理。当把Fiddler注册为系统代理时,所有依赖于WinINET代理的应用(如IE浏览器和其他浏览器)会把Web请求发送给Fiddler.

(2)New Viewer是用来打开一个新的fiddler窗口

(3)Load Archive用于重新加载之前捕获的以SAZ文件格式保存的流量。

(4)Save子菜单中的选项支持以多种方式把流量保存到文件中;该菜单选项和Web Session列表中的上下文菜单中的选项相同。

(5)Import Sessions...支持导入从其他工具捕获的流量,也支持导入以其他格式存储的流量。

(6)Export Sessions...支持把Fiddler捕捉到的Session以多种文件格式保存

(7)Exit菜单命令会取消把Fiddler注册为系统代理,并关闭工具栏

Edit菜单

Edit菜单中的绝大多数命令都需要作用于Web Session中当前选中的Session,因此除非选中一个或多个Session,否则大多数命令都不可用。

(1)Copy下面的几个子菜单分别支持复制选中Session的某些信息。

(2)Remove下面的子菜单分别支持从Web Session列表中删除全部、选择或未选中的Session

(3)Select All命令选择Sessions列表的所有内容。

(4)Paste as Session命令会基于剪贴板上的内容,生成一个或多个模拟的Web Session.

(5)Mark子菜单支持选择一种颜色来标记Web Session列表中选中的Session.

(6)Unlock for Editing 菜单命令会对某个选中的Web Session解锁,支持使用Inspectors编辑Session的所有请求和响应。

(7)Find Session...命令会打开Find Session窗口,搜索捕获到的数据流。

Rules菜单

 

(1)Hide Image Request触发器控制是否在Web Session列表中显示图像类Session.

(2)Hide CONNECTS触发器控制是否在Web Session列表中显示使用CONNECT请求方法的Session.

(3)Automatic Breakpoints子菜单控制Fiddler是否会自动在Before Requests或After Responses处设置断点。Ignore Image触发器控制这些断电是否作用于图片请求

(4)Customize Rules...菜单命令会使用配置的脚本编辑器打开当前的FiddlerScript文件

(5)如果选中Require Proxy Authentication菜单项,所有未提交Proxy-Authorization请求头的请求会返回HTTP/407响应,要求客户端安装证书

该规则可以用于测试HTTP客户端,确保这些规则在有证书的客户端服务器上可以正常工作。

(6)如果选中Apply GZIP Encoding菜单项,只要请求包含具有gzip标识的Accept-Encoding请求头,就会对除了图片以外的所有响应使用GZIP HTTP进行压缩。

该规则用于测试使用GZIP选项支持的客户端是否真正对内容进行压缩。该选项还支持性能调优,并且计算传输的压缩后的数据流的字节数。

(7)如果选中Remove All Encoding,会删除所有请求和响应的HTTP内容编码和传输编码

(8)Hide 304s选项会隐藏包含HTTP/304 Not Modified状态的响应的所有Session.

(9)Request Japanese Content选项会把所有请求的Accept-Encoding请求头设置或替换为ja 标识,表示客户端希望响应以日语形式发送

(10)User-Agents子菜单支持把所有请求的User-Agent请求头设置或替换成指定值。

(11)performance子菜单提供影响Web性能的简单选项

 

Tools菜单

 

 

(1)Fiddler Options...打开Fiddler Options窗口

(2)WinINET Options...打开IE的Internet Options窗口

(3)Clear WinINET Cache选项会清空IE和其他应用中所使用的WinINET缓存中的所有文件

(4)Clear WinINET Cookies选项会清空IE和其他应用中所发送的WinINET Cookie.

  Session的Cookies还是保持不变

(5)TextWizard...选项会启动TextWizard窗口,支持对文本进行编码和解码

(6)Compare Session选项只有当选中Web Session列表中的两个Session时才有效。

(7)Reset Script

(8)Sandbox,打开http://webdbg.com/sandbox/

(9)View IE Cache

(10)HOSTS...选项会打开Fiddler的Host Remapping工具

(11)New Session Clipboard..打开一个Session的剪贴板

 View菜单

 

 

(1)Show Toolbar控制Fiddler工具栏是否可见

(2)Default Layout、Stacked Layout、Wide Layout三种界面布局

(3)Minimize to Tray或按下CTRL+M可以最小化Fiddler到系统托盘中

(4)Squish Session List控制Web Session列表是否水平收缩

(5)AutoScroll Session list选项控制当添加新的Session时,Fiddler是否会自动滚动到Session列表的底部

Help菜单

 

 

 

 

 

posted @ 2019-12-18 23:14  飞鸟与新月  阅读(548)  评论(0编辑  收藏  举报