1.初识fiddler:

作用:截获http/HTTPS请求,查看截获的请求内容,伪造客户端请求和服务器响应,测试网站性能,解密https的web会话,提供插件。

工作环境:支持素有操作系统和所有浏览器,对win有更好的支持。

2.

当打开fiddler后 浏览器中,工具>internet选项>连接>局域网设置高级>代理设置中 代理服务器地址被fiddler修改。

3.fiddler两种代理模式:

流模式(streaming) 缓冲模式(buffering)

流模式:fiddler会实时把服务器返回给客户端的数据返回给我们。流模式更接近于浏览器真实的行为。缓冲模式:fiddler会等待http请求所有的数据都准备好之后才会返回给应用程序。

4.使用场景:

1:开发环境host配置——通常情况下,配置host需改系统文件很不方便;在多个开发环境下切换很低效。fiddler提供了相对高效地host配置方法。

2:前后端接口调试——通常情况下,调试前后端接口需真实的环境、一大堆假数据、写js代码。Fiddler只需一个UI界面进行配置即可。

3:线上bugfix——Fiddler可将发布文件代理到本地,快速定位线上bug。

4:性能分析和优化。

5.工具条常用功能

1.给Fiddler捕捉到的会话增加一个备注

2.Replay:回放按钮, 通常来讲,捕捉,再回放。按快捷键R,就对一个请求做回放了.

3.X:清空监控面板,remove all 完全清空.

4.Go:调试Debug,在请求了断点的时候,让断点继续往下走,需要结合状态栏里的功能来使用

5.stream:模式切换按钮 ,流模式和缓冲模式,默认是缓冲模式

6.Decode:帮助我们把http里面的请求解压出来.

7.any process:过滤请求

6.状态栏

底部黑色条:控制台,可以在此输入一些命令行。输入help,获得指令

左一capturing:控制Fiddler是否工作

Web Browsers:过滤会话来源

左三,截断

左四,数字:记录当前展示的会话数量

7.监控面板

如何显示ServerIP:

在CustomRules文件中运用Ctrl+F查询 static function Main()

添加一行代码 FiddlerObject.UI.lvSession.AddBoundColumn("Server IP",120,"X-HostIP");,然后就能在最后一行看到ServerIP了。

Statistics:一个会话的统计信息 可以为优化提供依据

Inspectors: 对请求进行解包 可以查看相应的请求、响应信息

AutoResponder: 文件代理 可以把请求的资源用本地文件代理掉 方便调试线上文件。

Composer:前后端接口连调 可以用来伪造请求

Log:记录日志

Timeline:网站性能分析

8.fiddler文件,文件代理,host配置

Host配置:tools--hosts--选中enable...激活,再进行域名配置

请求ip会改变:

host

用Fiddler来配置Host:Tools -> HOST -> 打勾->添加规则->生效;去掉勾,保存,失效,或者直接关闭Fiddler也行。作用是把一个网站域名下所有的文件都映射到一台指定的服务器或者一个IP下。

文件替换

拖拽到AutoResponder,EXACT精准匹配(也可以用正则表达式进行模糊匹配),进行save后,可以直接将匹配的文件进行加载。 只映射一个文件,也可以替换响应,延迟等

 9.fiddler请求模拟,前后端联调

请求的伪造:可以伪造Cookie

前后端连调:Composer -> 选择请求方式 GET -> copy 地址  参数-> excuete

400回复代表客户端请求错误

POST参数一般要放到RequestBody中

前端页面没有完成的情况下,后端可以用fiddler模拟http请求,联调接口

10.fiddler网络限速

网络限速

功能需要基于 fiddler 的插件

点击fiddlerScript 在代码里找到onBeforeRequest

FiddlerScript -> static function OnBeforeRequest ->

oSession["request-trickle-delay"]="3000";//请求阶段延迟

osession["response-trickle-delay"] = "3000";//请求立刻发出,回应延迟三秒

手机端网络限速方法:(待补全)

Save Script(保存脚本),发送请求

11.fiddler插件

插件很多,具体下载地址:https://www.telerik.com/fiddler/add-ons

JavaScript Formatter 代码格式化插件

Fiddler Add-ons 插件:javaScript  formatter -> js文件右击 -> 选择 make javascript pretty -> textview / syntaxview  代码全部高亮显示

traffic differ (对比两个不同的对话): 直接拖进两个不同的请求,会显示完整的对比数据  -> 可以用来对比优化前后网站之间的不同

12.fiddler第三方插件

第三方插件:willow  -> 快速管理host列表  完全可视化   http代理插件

可视化限速

因为没有开源,可以到http://pan.baidu.com/s/1mgocpBi进行下载体验

问题:.fiddler中文版下载插件无法使用。

解决方法:查看-显示控制台

然后输入

import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)

未解决。

Fiddler工具学习使用总结的更多相关文章

  1. WebApi及Fiddler工具

    WebApi及Fiddler工具 1.概述 曾经有人问:asp.net mvc和asp.net webapi区别在哪?这个其实不好回答的.可能因为mvc模式盛行的原因,webapi显得孤芳自赏了,让人 ...

  2. Fiddler工具详细介绍

    百度看到Fiddler工具的详细介绍,转载收藏,侵权删,原文地址:http://blog.csdn.net/qq_21445563/article/details/51017605 前部分讲解Fidd ...

  3. web手工项目04-测试报告的核心内容-HTTP请求和响应-fiddler工具进行抓包

    回顾 登录功能测试(需求分析(输入分析,处理分析,输出分析),数据构造,编写用例) 测试点设计思路--扩展(相关业务,特殊角度-分支,异常,逆向) 流程图元素与画法(开始/结束,路径,数据,判定,步骤 ...

  4. 『言善信』Fiddler工具 — 6、Fiddler界面布局详解【命令行和状态栏】

    目录 1.命令行 2.状态栏 1.命令行 命令行在Fiddler的左下方的黑色窗口,也叫QuickExec,可以调用 Fiddler的内置命令. 这一系列内置的函数用于筛选和操作会话列表中的sessi ...

  5. Git版本控制工具学习

    Git代码管理工具学习 分布式管理工具:git 相比较svn它更加的方便,基本上我们的操作都是在本地进行的. Git文件的三种状态:已提交,已修改,以暂存. 已提交:表示文件已经被保存到本地数据库. ...

  6. sql server 内置ETL工具学习(一) BCP篇

    sql server 内置ETL工具学习 常用的导入方式:bcp, BULK INSERT,OPENROWSET和 SSIS. BCP BCP全称BULK COPY PROGRAM 有以下特点: 命令 ...

  7. Fiddler - 工具配置及在ios抓取不了https的解决方法

    一.首先,官网下载最新版fiddler工具: https://www.telerik.com/fiddler 二.打开fiddler,点击Tools - Options 我电脑上的各项配置如下图(也可 ...

  8. linux 工具学习网站

    推荐一个很不错的linux工具学习网站; 对于一个开发人员来说,我觉得掌握这些工具对于基于linux的应用开发来说事半功倍. http://linuxtools-rst.readthedocs.io/ ...

  9. Fiddler的学习之路

    Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 . 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据.设置断点.调试 ...

随机推荐

  1. PMS学习

    一,PMS的adb相关重要指令 1,adb shell dumpsys package(dump所有的系统内apk信息) 2,adb shell dumpsys package “com.androi ...

  2. VS2019 使用

    下载 官网下载:链接 安装 1.点击下载程序,会显示这个界面 2.点击“继续”,等待安装程序安装完成 4.安装程序下载安装验证完毕,将会提示进入这个界面 5.为了方便起见,这里仅展示安装C++功能,在 ...

  3. Redis数据类型简介(十分钟快速学习Redis)

    如何在ubuntu18.04上安装和保护redis 如何连接到Redis数据库 如何管理Redis数据库和Keys 如何在Redis中管理副本和客户端 如何在Redis中管理字符串 如何在Redis中 ...

  4. 题解 洛谷P2959 【[USACO09OCT]悠闲漫步The Leisurely Stroll】

    原题:洛谷P2959 不得不说这道题的图有点吓人,但实际上很多都没有用 通过题上说的“三岔路口”(对于每一个节点有三条连接,其中一条连接父节点,另外两条连接子节点)和数据,可以那些乱七八糟的路和牧场看 ...

  5. [Unity UGUI序列帧]简单实现序列帧的播放

    在使用序列帧之前需要准备好序列帧的图集,打图集的操作参考 [Unity UGUI图集系统]浅谈UGUI图集使用 准备好序列帧图集,序列帧的播放原理就是获取到图集中的所有图片,然后按照设置的速度按个赋值 ...

  6. MySQL事务操作

    在 MySQL 命令行的默认设置下,事务都是自动提交的,即执行 SQL 语句后就会马上执行 COMMIT 操作.因此要显式地开启一个事务务须使用命令 BEGIN 或 START TRANSACTION ...

  7. 13.1 Go练习题

    13.1 Go练习题 创建一个goroutine与主线程按顺序相互发送信息若干次 且打印 slice在自动扩容后,内存地址变化 goroutine与闭包的坑 练习题汇总 package main fu ...

  8. 3.1Go变量

    3.1 Go变量 变量是对内存中数据存储空间的表示,如同门牌号对应着房间,同样的,变量名字对应变量的值. 变量:本质就是一块内存空间.用于存储某个数值.该数值在运行时可以改变. 变量使用步骤 1.声明 ...

  9. Oracle分页查询语句的写法

    分页查询是我们在使用数据库系统时经常要使用到的,下文对Oracle数据库系统中的分页查询语句作了详细的介绍,供您参考. AD:2013云计算架构师峰会精彩课程曝光 Oracle分页查询语句使我们最常用 ...

  10. 判断割是否唯一zoj2587

    Unique Attack Time Limit: 5 Seconds      Memory Limit: 32768 KB N supercomputers in the United State ...