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. [Java in NetBeans] Lesson 09. Switch / If-Else Ladder

    这个课程的参考视频和图片来自youtube. 主要学到的知识点有: 1. Nested If-else statement (if-else ladder) /** * 90 and above == ...

  2. JS发送短信验证码

    <div> <input type="tel" id="mobile" name="mobile" placeholder ...

  3. 9.C# 类

    1.类定义格式 [访问修饰符]class 类名 [:父类名,接口名,接口名] { //类成员 } 类的访问修饰符有public.internal两个,没有标明访问修饰符默认为internal,被int ...

  4. cocos2d-x JS 纯代码加载播放plist与png动画

    var cache = cc.spriteFrameCache; cache.addSpriteFrames(plist, png); var frames = []; for (var i = 1; ...

  5. linux降低内存后oracle数据库无法启动

    降低了虚拟机的内存之后发现虚拟机中的oracle数据库无法startup,原因是 target memory的数据有问题,然后在安装数据库的使用的是自动内存管理.涉及的一个系统文件 /dev/shm ...

  6. http与https区别

    1.安全. 内容采用对称加密,身份认证.建立一个信息安全通道来保证数据传输的安全.采用对称加密算法,来加密真实传输的数据.采用非对称加密算法(公钥和私钥),来保证连接的安全性.防止内容被第三方冒充和篡 ...

  7. <<attention is all you need>>速读笔记

    背景 在seq2seq中,一般是有一个encoder 一个decoder ,一般是rnn/cnn 但是rnn 计算缓慢,所以提出了纯用注意力机制来实现编码解码. 模型结构 大部分神经序列转导模型都有一 ...

  8. wordpress学习(四)---url伪静态简单了解

    在page-url.php页面做测试 <h2>url伪静态</h2> 接收到的pagename参数是:<? echo $wp_query->query_vars[' ...

  9. C#深入研究ArrayList动态数组自动扩容原理

    1 void Test1() { ArrayList arrayList = new ArrayList(); ; ; i < length; i++) { arrayList.Add(&quo ...

  10. Vue系列之 => 通过vue-resource发起ajax请求

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...