参考网址:

http://caibaojian.com/fiddler.html

http://www.cnblogs.com/tangdongchu/p/4178552.html

1.fiddler过滤会话

问题:每次使用Fiddler, 打开一个网站,都能在Fiddler中看到几十个会话,看得眼花缭乱。

期望:只想抓取自己想要的请求

步骤:

在Filers面板中勾选“Use Filters”,并在Hosts区域,设置以下三个选项:

1).第一项有三个选项,分别是 “No zone filter” “Show Only Intranet Hosts” “Show Only Internet Hosts”,不做更改;

2).第二项有四个选项,分别是:

No Host Filter”不设置hosts过滤 “;

Hide The Following Hosts”隐藏过滤到的域名 ;

“Show Only The Following Hosts”只显示过滤到的域名;

“Flag The Following Hosts”标记过滤到的域名;

选中“Show Only The Following Hosts”,在文本框内输入需要过滤的域名,多个域名使用”;“分号分割。fiddler默认会检查http头中设置的host,强制显示http地址中德域名。以“www.kugou.com”为例:

2.Response乱码时的处理方法

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

步骤:方法一:点击红框内容“Response body is encouded.Click to decode.”

方法二:选中工具栏中的"Decode"。  这样会自动解压缩。

3.反向代理-AutoResponder

原理:利用fiddler作為反向代理。意思就是将外界的request请求端口修改掉! 改写返回数据,最实用的功能!!!

步骤:

1)、用浏览器随意输入一个网址,如http://www.baidu.com/

2)、选中序号16记录,右击-勾选“Unlock fo Editing”,选择Fiddler右侧reponse块下的TextView,这里修改title,如图:

3).选择Fiddler右侧reponse块下的TextView,这里修改title,如图:

4)、去掉“Unlock for Editing”,再选择右侧上方的AutoResponder,勾选下方的checkbox选框,并将序号16托到下方,同时,里面会多条记录,如下图:

5).回到浏览器,刷新页面,如图,标题变为上面改的内容

4.fiddler提供了一个功能,让我们模拟低速网路环境…启用方法如:Rules → Performances → Simulate Modem Speeds

5.自己定义Modem Speeds 究竟要多快…点开Rules → Customize Rules

 找m_SimulateModem这个字,你会找到下面这段:这就是他模拟网路速度的原理,每上传/下载1KB 要delay 多久。。。
如果你习惯用kbps 去算的话,那么我们的算法就是 1000/下载速度 = 需要delay的时间(毫秒),比如50kb/s  需要delay200毫秒来接收数据。请注意,当你存档之后,原本已经勾选的Simulate Modem Speeds 会被取消勾选,要记得再到Rules → Performances → Simulate Modem Speeds 勾选喔~
6.用fiddler模拟404返回等操作
  

在客户端开发中,常常需要对一些特殊情况做处理,比如404、503等,又比如服务返回错误数据等。而测试这些情况会比较麻烦,往往都是找开发人员配合修改代码,这样效率不高。

接触到Fiddler之后,这样的情况一去不复返,我们可以很方便的通过Fiddler自带的AutoResponder工具模拟http响应。Fiddler的AutoResponder tab允许你从本地返回文件,而不用将http request 发送到服务器上。

下面来看教程:

1. 首先抓取客户端的http请求(参考另一篇文章Android/IOS手机使用Fiddler抓包和https://blog.csdn.net/qq_15283475/article/details/62224149)

2. 打开Fiddler 找到AutoResponder

3. 选择Enable automatic reaponses 和Unmatched requests passthrough

4. 选中左侧捕捉到的http请求,然后点击Add Rule

5. 在下面的Rule Editor 下拉选择要模拟的响应类型,200、404、502等(也可以自己创建Response,选中Create New Response...,如果是要替换掉某些页面文件,选中Find a file).  最后点击Save 保存下。

6. 建立规则后,向原url的请求,就变成了你所指定的响应,再去请求一下原url就能看到效果。

其中链接处用到了正则表达式

前缀为“EXACT:”表示完全匹配(大小写敏感)

无前缀表示基本搜索,表示搜索到字符串就匹配

前缀为“REGEX:”表示使用正则表达式匹配

前缀为“REGEX:(?insx)”表示匹配方式其中:

i表示不区分大小写;

n表示指定的唯一有效的捕获是显式命名或编号的形式;

s表示单行模式;

x表示空格说明的;

fiddler几种功能强大的用法的更多相关文章

  1. fiddler几种功能强大的用法(一)

    参考网址: http://caibaojian.com/fiddler.html http://www.cnblogs.com/tangdongchu/p/4178552.html 1.fiddler ...

  2. fiddler几种功能强大的用法(二)

    参考网址:http://blog.rekfan.com/articles/228.html http://www.cnblogs.com/tugenhua0707/p/4637771.html htt ...

  3. OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言

    OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(ExpressionLanguage,简称为EL),通过它简单一致的表达式语法,可以存取 ...

  4. 功能强大而又简单易学的编程语言Python

    Python是一种面向对象.直译式计算机程序设计语言,也是一种功能强大的通用型语言.首先,Python非常简单,以Hello World为例: Java的Hello World程序一般这么写: pub ...

  5. 四种Java线程池用法解析

    本文为大家分析四种Java线程池用法,供大家参考,具体内容如下 http://www.jb51.net/article/81843.htm 1.new Thread的弊端 执行一个异步任务你还只是如下 ...

  6. Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件!

    源:Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件! 2014年02月06日发布控件的重要更新版本: Victor 串口控件 1.5.0.2 版本 (包 ...

  7. Maven系列第8篇:你的maven项目构建太慢了,我实在看不下去,带你一起磨刀!!多数使用maven的人都经常想要的一种功能,但是大多数人都不知道如何使用!!!

    maven系列目标:从入门开始开始掌握一个高级开发所需要的maven技能. 这是maven系列第8篇. 整个maven系列的内容前后是有依赖的,如果之前没有接触过maven,建议从第一篇看起,本文尾部 ...

  8. Postman - 功能强大的 API 接口请求调试和管理工具

    Postman 是一款功能强大的的 Chrome 应用,可以便捷的调试接口.前端开发人员在开发或者调试 Web 程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的 Fi ...

  9. 20+功能强大的jQuery/CSS3图片特效插件

    以下是分享的20几个不错的图片特效插件,基于jQuery和CSS3. 1.jQuery图片下滑切换播放效果 这是一款基于jQuery的焦点图插件,这款焦点图的特点是有向下滑动的动画效果,滑到底部时,有 ...

随机推荐

  1. [Swift]LeetCode605. 种花问题 | Can Place Flowers

    Suppose you have a long flowerbed in which some of the plots are planted and some are not. However, ...

  2. mysql 主主+ Keepalived 高可用

    这是在mysql互为主从的基础上做的 yum -y install keepalived    #两台机器上都装 配置Keepalived主从, vrrp_instance VI_1 { state ...

  3. SpringMVC接收json数组对象

    最近帮一个妹子解决一个需求,就是前台使用ajax传三个相同的对象,再加一个form表单对象.然后遇到各种问题,终于解决了,@RequestBody接收Json对象字符串 ​以前,一直以为在Spring ...

  4. Python获取文件夹的名字

    dir = "../data/20170308/221.176.64.146/" # root 文件夹下的所有文件夹(包括子文件夹)的路径名字../data/20170308/22 ...

  5. C++版 - 剑指offer面试题38:数字在已排序数组中出现的次数

    数字在已排序数组中出现的次数 提交网址: http://www.nowcoder.com/practice/70610bf967994b22bb1c26f9ae901fa2?tpId=13&t ...

  6. VR开发相关资源

    1. VRTK(StreamVR TOOLKIT):https://github.com/thestonefox/VRTK 2. StrangeIoc 专为c#和Unity写的框架 3. Frame ...

  7. 软件性能测试技术树(三)----数据库(MySQL)性能

    全图: MySQL重点监控指标: MySQL主流分支: 数据库架构设计: MySQL慢查询: SQL语句分析与调优: MySQL索引: MySQL存储引擎: MySQL实时监控: MySQL集群监控工 ...

  8. [Leetcode]237. Delete Node in a Linked List -David_Lin

    Write a function to delete a node (except the tail) in a singly linked list, given only access to th ...

  9. Jvm垃圾回收器(算法篇)

    在<Jvm垃圾回收器(基础篇)>中我们主要学习了判断对象是否存活还是死亡?两种基础的垃圾回收算法:引用计数法.可达性分析算法.以及Java引用的4种分类:强引用.软引用.弱引用.虚引用.和 ...

  10. cache2go源码最后一讲 - examples

    先看一下我们讲到哪里了: cache2go的源码前面我们已经讲完了cacheitem和cachetable的实现,今天cahce和examples会一起讲完~ 1.cache.go源码 ​      ...