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菜单

Fiddler的工作原理与主菜单介绍(一)的更多相关文章

  1. 1,fiddler的工作原理和安装

    1,工作原理就是通过设置代理监控客户端和服务端的协议 2,fiddler的安装 1,官方的下载地址:https://www.telerik.com/download/fiddler 一步步安装即可 2 ...

  2. EBS 显示主页面的工作列表和主菜单

    EBS环境: R12.1.3 问题描述:如果系统的“个性化页”做了设置,可能出现登录系统后,如果下图红框中的 主菜单和工作列表没有显示的情况,如果需要重新显示“主菜单”和“工作列表”,可参考以下操作 ...

  3. 【note】EtherCAT Configurator 使用之主菜单介绍

    EtherCAT配置器是一个工具,用于配置EtherCAT总线. 工具管理一个或多个EtherCAT主设备和连接到该主站的EtherCAT从站.配置的设备能够脱机或能够通过扫描EtherCAT现场总线 ...

  4. JVM 垃圾回收器工作原理及使用实例介绍

    IBM介绍文档:https://www.ibm.com/developerworks/cn/java/j-lo-JVMGarbageCollection/ Java 的新生代串行垃圾回收器中使用了复制 ...

  5. JVM 垃圾回收器工作原理及使用实例介绍(转载自IBM),直接复制粘贴,需要原文戳链接

    原文 https://www.ibm.com/developerworks/cn/java/j-lo-JVMGarbageCollection/ 再插一个关于线程和进程上下文,待判断 http://b ...

  6. PhoneGap架构基础及工作原理介绍

    转自:http://mobile.51cto.com/others-308545.htm 本篇文章从PhoneGap由来.功能以及工作原理,力争由浅入深介绍PhoneGap框架.   为什么需要Pho ...

  7. Keepalive工作原理

    Keepalive工作原理 1.1软件介绍 Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能.因此 ...

  8. jdk线程池ThreadPoolExecutor工作原理解析(自己动手实现线程池)(一)

    jdk线程池ThreadPoolExecutor工作原理解析(自己动手实现线程池)(一) 线程池介绍 在日常开发中经常会遇到需要使用其它线程将大量任务异步处理的场景(异步化以及提升系统的吞吐量),而在 ...

  9. 全网最全最细的fiddler使用教程以及工作原理

    目录:导读 一.Fiddler抓包工具简介 二.Fiddler工作原理 三.Fiddler安装 四.Fiddler界面介绍​ 五.Fiddler菜单栏介绍 六.Fiddler工具栏介绍 七.Fiddl ...

随机推荐

  1. DN值

    DN值(Digital Number )是遥感影像像元亮度值,记录的地物的灰度值.无单位,是一个整数值,值大小与传感器的辐射分辨率.地物发射率.大气透过率和散射率等有关. 从DN值计算大气顶的反射率使 ...

  2. nginx源码包安装

    一.下载码源包 1. 获得源码包途径官方网站,可以获得最新的软件包 Nginx: www.nginx.org 2.具体实例展示(tengine) 下载源码包,准备软件包 准备编译环境如编译器gcc.m ...

  3. 软件设计分为结构化设计(SD)

    软件设计分为结构化设计(SD)与面向对象设计(OOD). 其中结构化设计SD是一种面向数据流的方法,它以SRS(软件需求规格说明书)和SA(结构化分析)阶段所产生的和数据字典等文档为基础,是一个自顶向 ...

  4. HDU 1087 Super Jumping! Jumping! Jumping! (动态规划、最大上升子序列和)

    Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 ...

  5. Spring的核心思想,总结得非常好!

    依赖注入是面型接口编程的一种体现,是Spring的核心思想.事实上依赖注入并不是什么高深的技术, 只是被Sping这么以包装就显得有些神秘. 如上代码清单所示,Coder使用Java语言打印hello ...

  6. C++中的自定义内存管理

    1,问题: 1,new 关键字创建出来的对象位于什么地方? 1,位于堆空间: 2,有没有可能位于其它地方? 1,有: 2,通过一些方式可以使动态创建的对象位于静态存储区: 3,这个存储区在程序结束后释 ...

  7. Ubuntu下TP5隐藏入口文件

    部分内容是复制其他网友的博文,由于过了一段时间,找不到原文地址,再次表示感谢.以下是自己整理的,目的只是以后方便查阅 1.ubuntu或linux下找不到apache服务器配置文件httpd.conf ...

  8. 03: saltstack和ansible的区别和原理

    1.1 SaltStack.Ansible.Puppet比较 1.SaltStack 1. saltStack由Python编写,为server-client模式的系统,自己本身支持多master. ...

  9. [LeetCode] 227. 基本计算器 II

    题目链接: https://leetcode-cn.com/problems/basic-calculator-ii 难度:中等 通过率:33.2% 题目描述: 实现一个基本的计算器来计算一个简单的字 ...

  10. paramiko : 错误集整理

    错误1    时间2017-12-19:No handlers could be found for logger "paramiko.transport" 解决办法:parami ...