fiddler 也已经使用了几年了,前面做免登录时就是用了fiddler,为了抓取cookie等信息。但是一直没有对他进行整理出一篇文章来介绍其使用。

Fiddler的基本介绍

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

Fiddler的官方帮助:http://docs.telerik.com/fiddler/knowledgebase/quickexec

  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。

Fiddler的安装

  安装就不做过多介绍了,到官网或是百度下载安装包,一路下一步即可。

安装后效果图如下:

下面先简单介绍一下常用设置

fiddler filters 使用(fiddler只显示指定请求,fiddler不显示指定请求,即filter请求过滤)

内容来至  http://blog.csdn.net/notejs/article/details/49681479

Fiddler 有一个filters可以很好的帮助我们只显示我们关系的请求或者隐藏掉我们不关心的请求。这在开发中是非常有用的,尤其是你在这边想看请求,那边有程序或者网站在自动频繁发送求情,真的很烦。回想一下买票插件,是不是会在不停的刷,你在fiddler看东西就会很烦。

另外就是使用fiddler的时候我们几乎不会关心js和css请求,现在js越来越多的模块化了,在开发模式下往往会加载很多js文件(可能几百个),这往往都是我们不关系的请求。

如下图,先整体看看。

接下来是分步解释(按照途中标记的号码):

  1. 是否启用filters。

  2. 我们可以维护多套filters,在不同的情形下加载不同的filter,在Actions中可以把当前的filter保存起来,也可以加载以前保存的filter,如下图。

  3. 根据主机名信息的filter。其中第一个下拉框是只显示内网或者外网选项,个人觉得用处很有限,如下图

    另一个是下拉框结合它下面的输入框来完成根据主机名信息显示或者隐藏或者标记指定请求,如下图。

    下图是一个例子,可以简单理解为隐藏对本机的请求。

  4. 根据进程信息的filter,第一个checkbox选上就可以选择进程了,那么fiddler将只显示该进程发出的请求,如下图。另外两个一个是指关心IE,另一个是隐藏来自service host的请求。

  5. 根据request header的filter。这个可能是我觉得比较有用的一块儿了。

    Show only if URL contains 和 Hide if URL contains 使用方法类似 功能相反。都是url中包含某些字符的filter,多种情况空格分隔。支持正则表达式和完全匹配,如下是个例子,可以简单理解为隐藏所有js和css请求。

  6. 这个部分是各种各样的断点,大家应该知道fiddler是有断点功能的,可以在请求发送时断住,之后修改请求,再发送。当然也可以在响应的时候断住,做修改。而且fiddler还可以模拟响应,根本不发送给server端,在项目开发阶段,server端没有准备好API这个就特别有用了,或者用了复现一些问题。

  7. 如果server端的响应代码属于或者不属于哪一类就隐藏,比较简单。

  8. 这部分是根据响应类型和大小的filter,前一半是显示隐藏的filter,后block的filter。block的filter也挺有意思,如果你选中了block css那么浏览器就加载不到css了。

  9. 是对response header的flag和修改。比较有用的是如果你想知道哪些请求修改了cookie那么就可以选中第一个checkbox。

设置Filters 的目的是为了过滤无关紧要的请求。

配置fiddler允许监听到https(fiddler默认只抓取http格式的)

打开Fiddler菜单项Tools->TelerikFiddler Options->HTTPS

勾选CaptureHTTPS CONNECTs,点击Actions,

勾选Decrypt HTTPS trafficIgnore servercertificate errors两项,点击OK(首次点击会弹出是否信任fiddler证书和安全提示,直接点击yes就行),见图:

Fiddler 简单介绍的更多相关文章

  1. Fiddler使用简单介绍

     一,fiddler简介 1.1,什么是fiddler Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的"进出&qu ...

  2. iOS-iOS开发简单介绍

    概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...

  3. Fiddler功能介绍之Web抓包、远程抓包教程【转载】

    一.fiddler简介 简单来说,Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯.网上简介很多,我们不多说. 二.fiddler版本 fiddle ...

  4. iOS开发简单介绍

    概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的iOS程序.但是这里我想强调一下,前面的 ...

  5. 《HTML 5网页开发实例具体解释》样章、内容简单介绍、前言

    http://spu.jd.com/1167757597.html http://product.dangdang.com/23484942.html 样章 http://download.csdn. ...

  6. [原创]关于mybatis中一级缓存和二级缓存的简单介绍

    关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...

  7. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  8. 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍

    一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...

  9. yii2的权限管理系统RBAC简单介绍

    这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖 ...

随机推荐

  1. FFMPEG编译参数解析

    Standard options: 基本选项参数 --help 显示此帮助信息|print this message --log[=FILE|yes|no] 记录测试并输出到config.err文件| ...

  2. Python学习基础(二)——集合 深浅拷贝 函数

    集合 # 集合 ''' 集合是无序不重复的 ''' # 创建列表 l = list((1, 1, 1)) l1 = [1, 1, 1] print(l) print(l1) print("* ...

  3. python简说(七)元组,集合

    一.元组 元组也是一个list,但是它的值不能改变 定义元组的时候,只有一个元素,后面得加逗号 oracle_info = (123,) 二.集合 1.集合天生就可以去重,集合是无序的 2.#交集 r ...

  4. 判断一个点是否在RotatedRect中

    openCV函数pointPolygonTest(): C++: double pointPolygonTest(InputArray contour, Point2f pt, bool measur ...

  5. 20145308 《网络对抗》 注入shellcode+Return-to-libc攻击 学习总结

    20145308 <网络对抗> 逆向及BOF进阶实践 注入shellcode+Return-to-libc攻击 学习总结 实践目的 注入shellcode 实现Return-to-libc ...

  6. 关于VS2013下制作和使用静态库和动态库

    关于VS2013下制作和使用静态库和动态库 引言 什么是库:库是写好的现有的,成熟的,可以复用的代码. 所谓静态.动态是指链接.将一个程序编译成可执行程序的步骤: 静态库在链接阶段,会将汇编生成的目标 ...

  7. Django使用多数据库

    有些项目可能涉及到使用多个数据库的情况,方法很简单. 1.在settings中设定DATABASE 比如要使用两个数据库: DATABASES = { 'default': { 'NAME': 'ap ...

  8. Python3 tkinter基础 grid(row,column) 窗体的布局

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  9. 嵌入式电路中的BUCK VS LDO【转】

    本文转载自:http://blog.chinaunix.net/uid-25906157-id-4125916.html 作为一名FAE,才知硬件知识的匮乏.慢慢积累一点儿硬件知识吧!BUCK和LDO ...

  10. ununtu 18.04 163 mirror

    deb http://mirrors.163.com/ubuntu/ bionic main restricted deb http://mirrors.163.com/ubuntu/ bionic- ...