Fiddler是一款网络抓包工具,抓包可以是抓取电脑端请求的数据,还可以抓取移动端(手机APP)的数据包,可以监控HTTP和HTTPS的流量,可以通过浏览器或者客户端软件向服务器发送的HTTP或者HTTPS请求给截获,对于截获之后的请求,还可以查看截获的请求内容,还可以伪造请求,不仅可以伪造服务器返回的请求,而且还可以伪造请求发送给服务器,当然也可以通过抓取用户发送的涉及用户名和密码的数据包来获取用户的密码等等 .....这样就方便进行前后端调试了。当然还可以测试网站性能,在优化方面提供便捷。还可以解密HTTPS的会话,HTTPS本来是加密的协议,通过fiddler可以解密操作。fiddler可以通过第三方插件满足需求。有了这些,我们的工作效率就可以提升很大。

了解一下Fiddler的工作原理

Fiddler就是在客户端和服务器之间创建了一个代理服务器,客户端发起的请求都要通过Fiddler创建的代理服务器,才能最终到达请求的服务器。举例:我们用浏览器打开一个网页,本来我们是向网页所属的服务器发送请求,但是我们使用Fiddler的时候,我们是向Fiddler发送请求,然后再由Fiddler把我们的请求转送到目标服务器上。

Fiddler是如何实现这种功能的呢?

我们先本地启动Fiddler,然后打开浏览器。浏览器本身都会有一个代理服务器设置,这里拿Google Chrome举例,点击右上角的菜单--->设置--->系统[打开代理设置]--->连接--->局域网设置--->高级。

发现服务器代理的地址已经被Fiddler篡改了,当启动Fiddler之后,代理服务器地址就被改成127.0.0.1了,默认端口8888,实际上就是Fiddler监听的地址,通过修改地址,Fiddler就可以截获我们发出的所有请求了。

当我们使用Fiddler作为服务器的时候,实际上有两种模式可以选择,一种是流模式,一种是缓存模式。
使用流模式的时候,Fiddler会实时的把服务器返回给客户端应用程序的数据返回给我们。
使用缓冲模式的时候Fiddler会等待HTTP请求所有的数据都准备好之后才会返回给我们的应用程序。

Fiddler工具界面大致介绍

链接:https://pan.baidu.com/s/1YlZBlu3iPI_6U-eHR0sZ9w 密码:0m0p //这里是中文汉化版下载地址

应用场景

Fiddler在工作中大概有四块能为我们提供便利

一、开发环境host配置
通常情况下,配置host需要修改系统文件,很不方便;在多个开发环境下切换效率很低。Fiddler提供了相对高效的host配置方法。很是方便。

二、前后端接口调试

通常情况下,调试前后端接口需要真实的环境、一大堆假数据、写JavaScript代码。Fiddler只需要一个UI界面进行配置即可,向服务器哪个接口发送请求,get或者post,请求什么数据等,做接口联调很方便。

三、线上bugfix
把已经发布的某个文件,代理到本地,然后通过修改本地文件看看线上的BUG是否满足修改。可以快速定位线上BUG。

四、性能分析和优化
Fiddler会提供请求的实际图,通过实际图清晰明了网站哪里需要优化。

Fiddler(一)Fiddler介绍及应用场景的更多相关文章

  1. Fiddler使用简单介绍

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

  2. Fiddler的基本介绍

    fiddler 简介: 一款免费且功能强大的数据包抓取软件.它通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户端和服务器间的http请求,支持监视.设置断 ...

  3. 抓包工具 - Fiddler(详细介绍)

    Fiddler的详细介绍 一.Fiddler与其他抓包工具的区别 1.Firebug虽然可以抓包,但是对于分析http请求的详细信息,不够强大.模拟http请求的功能也不够,且firebug常常是需要 ...

  4. fiddler基本功能介绍

    一.几种主流的抓包工具的对比: Wireshark:通用的抓包工具,抓取信息量庞大,详细.通常需要过滤才可容易得到有用信息.如果只抓http请求个人认为有点大材小用. Firebug.httpWatc ...

  5. Fiddler工具详细介绍

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

  6. Fiddler的详细介绍

    Fiddler的详细介绍 一.Fiddler与其他抓包工具的区别 1.Firebug虽然可以抓包,但是对于分析http请求的详细信息,不够强大.模拟http请求的功能也不够,且firebug常常是需要 ...

  7. Redis常用数据类型介绍、使用场景及其操作命令

    Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字 ...

  8. fiddler软件测试——Fiddler抓取https设置详解(图文)(摘抄)

    随笔- 8  文章- 0  评论- 0 fiddler软件测试——Fiddler抓取https设置详解(图文)   强烈推荐(原创亲测)!!!Fiddler抓取https设置详解(图文)转 本文主要说 ...

  9. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_6-2.申请微信支付介绍和不同场景的支付方式

    笔记 2.申请微信支付介绍和不同场景的支付方式         简介:介绍微信商户平台,支付方式和使用场景,申请微信支付流程                  1.什么是微信商户平台:        ...

  10. 小D课堂 - 新版本微服务springcloud+Docker教程_6-01 微服务网关介绍和使用场景

    笔记 第六章 微服务网关zuul开发实战 1.微服务网关介绍和使用场景     简介:讲解网关的作用和使用场景 (画图)          1)什么是网关         API Gateway,是系 ...

随机推荐

  1. Nginx配置虚拟主机

    就是在一台服务器启动多个网站. 如何区分不同的网站: 1.域名不同 2.端口不同 在Nginx的安装目录的conf目录下有个配置文件nginx.conf 1.端口区分: 复制server节点,更改端口 ...

  2. js 对象的_proto_属性 和函数的prototype属性分析

    bill是 Employee类型的实例,_proto_指向Employee.prototype Employee.prototype有一个constructor属性,指向Employee函数自身 fu ...

  3. 17-Python3 循环语句

    2018-11-21 18:23:56 print('pass语句') for letter in 'Runoob': if letter=='o': pass else: print(letter) ...

  4. MySQL--5子查询与连接小结

    子查询:出现在其他sql语句中的 SELECT,必须出现在小括号内,子查询外层可以是常见的SELECT语句,INSERT语句 UPDATE语句 DELETE语句,在子查询中可以包含多个关键字和条件 ( ...

  5. Go win32

    先说的让人兴奋的吧,“GO的库开发在windwos上尽然是一摸一样的啊” C:\go-pro\go-self-package>go build gin-main.go 2017/09/20 14 ...

  6. jmeter压测之 监控--nmon

    压测方法整理: 1.     写jmx脚本,整理csv数据文件: 2.     部署测试环境,把jmx和csv放在压测机,把监控脚本nmon放被压测机: 3.     安装nmon: a.     w ...

  7. 使用sqlite3解决IDEA中SVN更新提示cleanup却无法cleanup的问题

    用idea开发项目,更新svn有时莫名其妙的出现 Error:Error performing cleanup for 'D:\SourceProject\XXXX': svn: E155004: T ...

  8. MySQL创建外键约束的报错Error : Can't create table '#sql-534_185' (errno: 150)

    总得来说是因为两个表的字段类型不一致,例如: 两个字段的类型或大小不严格匹配,一个为tinyint,另一个为char:或一个为int(10)另一个为int(9)也是不行的,即使都为int(10),但一 ...

  9. POI以SAX方式解析Excel2007大文件(包含空单元格的处理) Java生成CSV文件实例详解

    http://blog.csdn.net/l081307114/article/details/46009015 http://www.cnblogs.com/dreammyle/p/5458280. ...

  10. C#-----创建DataTable对象

    //DataTable表示内存中数据的一个表 DataTable dt = new DataTable(); /** * public DataColumn Add(string columnName ...