Fiddler是最强大最好用的Web调试工具之一--网站抓包分析

news/2024/5/9 7:40:38/文章来源:https://blog.csdn.net/weixin_34174422/article/details/86124466

Fiddler 教程

Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对开发还是测试来说,都有很大的帮助。

阅读目录

  1. Fiddler的基本介绍
  2. Fiddler的工作原理
  3. 同类的其它工具
  4. Fiddler如何捕获Firefox的会话
  5. Firefox 中使用Fiddler插件
  6. Fiddler如何捕获HTTPS会话
  7. Fiddler的基本界面
  8. Fiddler的统计视图
  9. QuickExec命令行的使用
  10. Fiddler中设置断点修改Request
  11. Fiddler中设置断点修改Response
  12. Fiddler中创建AutoResponder规则
  13. Fiddler中如何过滤会话
  14. Fiddler中会话比较功能
  15. Fiddler中提供的编码小工具
  16. Fiddler中查询会话
  17. Fiddler中保存会话
  18. Fiddler的script系统
  19. 如何在VS调试网站的时候使用Fiddler
  20. Response 是乱码的

Fiddler的基本介绍

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

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.

 

同类的其它工具

同类的工具有: httpwatch, firebug, wireshark

 

Fiddler 如何捕获Firefox的会话

能支持HTTP代理的任意程序的数据包都能被Fiddler嗅探到,Fiddler的运行机制其实就是本机上监听8888端口的HTTP代理。 Fiddler2启动的时候默认IE的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置的,所以将Firefox的代理改为127.0.0.1:8888就可以监听数据了。

Firefox 上通过如下步骤设置代理

点击: Tools -> Options,  在Options 对话框上点击Advanced tab - > network tab -> setting.

 

Firefox 中安装Fiddler插件

修改Firefox 中的代理比较麻烦, 不用fiddler的时候还要去掉代理。 麻烦

推荐你在firefox中使用fiddler hook 插件, 这样你非常方便的使用Fiddler获取firefox中的request 和response

当你安装fiddler后, 就已经装好了Fiddler hook插件, 你需要到firefox中去启用这个插件
打开firefox   tools->Add ons -> Extensions 启动 FiddlerHook

 

 

Fiddler如何捕获HTTPS会话

默认下,Fiddler不会捕获HTTPS会话,需要你设置下, 打开Fiddler  Tool->Fiddler Options->HTTPS tab

 选中checkbox, 弹出如下的对话框,点击"YES"

点击"Yes" 后,就设置好了

Fiddler的基本界面

 看看Fiddler的基本界面

 

Inspectors tab下有很多查看Request或者Response的消息。 其中Raw Tab可以查看完整的消息,Headers tab 只查看消息中的header. 如下图

 

Fiddler的HTTP统计视图

通过陈列出所有的HTTP通信量,Fiddler可以很容易的向您展示哪些文件生成了您当前请求的页面。使用Statistics页签,用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。

选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化

QuickExec命令行的使用

Fiddler的左下角有一个命令行工具叫做QuickExec,允许你直接输入命令。

常见得命令有

help  打开官方的使用页面介绍,所有的命令都会列出来

cls    清屏  (Ctrl+x 也可以清屏)

select  选择会话的命令

?.png  用来选择png后缀的图片

bpu  截获request

Fiddler中设置断点修改Request

[作者:小坦克]  Fiddler最强大的功能莫过于设置断点了,设置好断点后,你可以修改httpRequest 的任何信息包括host, cookie或者表单中的数据。设置断点有两种方法

第一种:打开Fiddler 点击Rules-> Automatic Breakpoint  ->Before Requests(这种方法会中断所有的会话)

如何消除命令呢?  点击Rules-> Automatic Breakpoint  ->Disabled

第二种:  在命令行中输入命令:  bpu www.baidu.com   (这种方法只会中断www.baidu.com)

如何消除命令呢?  在命令行中输入命令 bpu

 

看个实例,模拟博客园的登录, 在IE中打开博客园的登录页面,输入错误的用户名和密码,用Fiddler中断会话,修改成正确的用户名密码。这样就能成功登录

1. 用IE 打开博客园的登录界面  http://passport.cnblogs.com/login.aspx
2. 打开Fiddler,  在命令行中输入bpu http://passport.cnblogs.com/login.aspx
3. 输入错误的用户名和密码 点击登录
4. Fiddler 能中断这次会话,选择被中断的会话,点击Inspectors tab下的WebForms tab 修改用户名密码,然后点击Run to Completion 如下图所示。
5. 结果是正确地登录了博客园

 

 

Fiddler中设置断点修改Response

当然Fiddler中也能修改Response

第一种:打开Fiddler 点击Rules-> Automatic Breakpoint  ->After Response  (这种方法会中断所有的会话)

如何消除命令呢?  点击Rules-> Automatic Breakpoint  ->Disabled

第二种:  在命令行中输入命令:  bpafter www.baidu.com   (这种方法只会中断www.baidu.com)

如何消除命令呢?  在命令行中输入命令 bpafter,

具体用法和上节差不多,就不多说了。

Fiddler中创建AutoResponder规则

Fiddler 的AutoResponder tab允许你从本地返回文件,而不用将http request 发送到服务器上。

看个实例. 1. 打开博客园首页,把博客园的logo图片保存到本地,并且对图片做些修改。

2. 打开Fiddler 找到logo图片的会话, http://static.cnblogs.com/images/logo_2012_lantern_festival.gif,  把这个会话拖到AutoResponer Tab下

3. 选择Enable automatic reaponses 和Unmatched requests passthrough

4. 在下面的Rule Editor 下面选择 Find a file... 选择本地保存的图片.  最后点击Save 保存下。

5.  再用IE博客园首页, 你会看到首页的图片用的是本地的。

 



Fiddler中如何过滤会话

每次使用Fiddler, 打开一个网站,都能在Fiddler中看到几十个会话,看得眼花缭乱。最好的办法是过滤掉一些会话,比如过滤掉图片的会话. Fiddler中有过滤的功能, 在右边的Filters tab中,里面有很多选项, 稍微研究下,就知道怎么用。

 

Fiddler中会话比较功能

选中2个会话,右键然后点击Compare,就可以用WinDiff来比较两个会话的不同了 (当然需要你安装WinDiff)

 

Fiddler中提供的编码小工具

点击Fiddler 工具栏上的TextWizard,  这个工具可以Encode和Decode string.

Fiddler中查询会话

用快捷键Ctrl+F 打开 Find Sessions的对话框,输入关键字查询你要的会话。 查询到的会话会用黄色显示

Fiddler中保存会话

有些时候我们需要把会话保存下来,以便发给别人或者以后去分析。  保存会话的步骤如下:

选择你想保存的会话,然后点击File->Save->Selected Sessions

Fiddler的script系统

Fiddler最复杂的莫过于script系统了 官方的帮助文档: http://www.fiddler2.com/Fiddler/dev/ScriptSamples.asp

首先先安装SyntaxView插件,Inspectors tab->Get SyntaxView tab->Download and Install SyntaxView Now... 如下图

 

安装成功后Fiddler 就会多了一个Fiddler Script tab, 如下图

在里面我们就可以编写脚本了, 看个实例 让所有cnblogs的会话都显示红色。

把这段脚本放在OnBeforeRequest(oSession: Session) 方法下,并且点击"Save script"

     if (oSession.HostnameIs("www.cnblogs.com")) {oSession["ui-color"] = "red";}

这样所有的cnblogs的会话都会显示红色

 

如何在VS调试网站的时候使用Fiddler

我们在用visual stuido 开发ASP.NET网站的时候也需要用Fiddler来分析HTTP, 默认的时候Fiddler是不能嗅探到localhost的网站。不过只要在localhost后面加个点号,Fiddler就能嗅探到。

例如:原本ASP.net的地址是 http://localhost:2391/Default.aspx,  加个点号后,变成 http://localhost.:2391/Default.aspx 就可以了

 

第二个办法就是在hosts文件中加入  127.0.0.1  localsite

如何你访问http://localsite:端口号   。  这样Fiddler也能截取到了。

 

Response 是乱码的

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

1. 点击Response Raw上方的"Response is encoded any may need to be decoded before inspection. click here to transform"

2. 选中工具栏中的"Decode"。  这样会自动解压缩。

 

附: Fiddler 系列教程, (连载中, 敬请期待)

Fiddler (一) 教程

Fiddler (二) Script用法

Fiddler (三) Composer创建和发送HTTP Request

Fiddler (四) 实现手机的抓包

Fiddler (五) Mac下使用Fiddler

Fiddler (六) 最常用的快捷键

 

http://www.cnblogs.com/TankXiao/archive/2012/02/06/2337728.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_763755.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大型网站架构系列一:负载均衡详解(1)

面对大量用户访问、高并发请求,海量数据,可以使用高性能的服务器、大型数据库,存储设备,高性能Web服务器,采用高效率的编程语言比如(Go,Scala)等,当单机容量达到极限时,我们需要考虑业务拆分和分…

如何获取qlabel里面的图片_一键删除图片背景,这个网站你值得收藏!

在《这样做读书笔记,书看完之后想忘都忘不掉》一文中,我们介绍过如何制作PPT版的读书笔记,在实际操作的过程中,你可能还会遇到两个问题。第一,在哪里可以下载到比较高质量的书籍图片?第二,怎样删…

锚链接点击添加class_网站锚文本必做这对优化效果影响很大

锚文本,优化效果不论是针对搜索引擎还是用户,锚文本的建立都是非常重要的,不只能够促进蜘蛛多网站的抓取,同时也可以提升网站的用户体验,建立质量度比拟高的锚文本,便能够促进网站排名的提升。一,引导方向&…

iis express 无法访问此网站

选择项目,右击选择【属性】,不要勾选【覆盖应用程序根URL(U)】,或让【覆盖应用程序根URL(U)】下面的输入框和上面的输入框的地址一样! 转载于:https://www.cnblogs.com/come-on-come-on/p/7803761.html

为什么linux访问不到文件夹,laravel部署到linux,将public文件夹指定为网站根目录,但是无法访问其子文件夹...

本机使用的是window环境,一切正常,但是部署到linux系统上(配的是nginx),在访问的时候,控制器和方法都能正常执行,页面也可以输出,但是输出的页面却缺少css文件,一查是500错误,已经将请求重定向到public文件夹下,我的目录结构是:public/web/css/css.css域名是:aaa.com直接访问aa…

发布内部的普通非加密Web网站

发布内部的普通非加密Web网站 (2009-1-9)实验:发布内部的普通非加密Web网站(通过IP地址访问)(HttpISA ServerHttp) 注意:被发布的Web网站所在的计算机必须被配置为SecureNAT客户端。…

【Python】探测网站是否可以访问

首先贴上简陋的python脚本 #coding:utf-8import urllib,linecachefor line in linecache.updatecache(url.txt):try:code urllib.urlopen(line.strip(\n)).getcode() print codeexcept Exception,e:print e if code 200:with open(url_new.txt,a) as fw:fw.write(li…

selenium验证码登录_如何用 Python 登录主流网站,爬取一些需要的数据

最近收集了一些网站的登陆方式和爬虫程序,有的通过 selenium 登录,有的则通过抓包直接模拟登录。作者希望该项目能帮助初学者学习各大网站的模拟登陆方式,并爬取一些需要的数据。作者表示模拟登陆基本采用直接登录或者使用 seleniumwebdriver…

PHP网站目录管理脚本,兼容PHP5的PHP目录管理函数库

兼容PHP5的PHP目录管理函数库更新时间:2008年07月10日 23:43:03 作者:php下进行目录的一些操作,经常用到的方法主要能兼容: PHP 5一、chdir -- 改变目录语法:bool chdir ( string directory )返回值:整数…

服务器开机修复,win10开机怎么进修复模式_网站服务器运行维护

win10开机闪屏进不去怎么解决_网站服务器运行维护win10开机闪屏进不去的解决方法:首先重启2次进入安全模式;然后点击疑难解答-高级选项;最后在高级选项中选择恢复到之前的正确系统即可。win10开机怎么进修复模式1、首先,大家先打开…

怎末吧做好的网站放到服务器里,将做好的网站放到云服务器上

将做好的网站放到云服务器上 内容精选换一换通过华为云备案,需要先购买华为云中国大陆节点服务器,用于网站备案使用,后称为“备案服务器”。目前可用于华为云备案的服务器,请参见备案服务器。如果您的华为云帐号A中没有可备案的服…

常见的网站服务器架构有哪些?

以下的架构都是在假设已经优化过linux内核的情况下进行:初级篇:(单机模式)假设配置:(Dual core 2.0GHz,4GB ram,SSD)基础框架: apache(PHP) Mysql / IIS MSSQL(最基础…

php5.2架设网站,FreeBSD 6.2快速架设网站服务器教程(Apache2.2.X+MySQL5.X.X+ PHP5.2.X+ ZendOptimizer-3.2.X)...

世界网络教研室整理1、 安装设置prozilla(port下载加速)当然是首先安装下载加速啦,不然下面的安装会好慢的安装使用如下指令:#cd /usr/ports/ftp/prozilla#make install clean中间会出现:这是例子和HTML格式的手册页,不会用以后想…

JSsearch实现在购物网站输入后推荐联想的效果

在篇文章里,我们主要讲解一下JSsearch如何完成推荐的功能 首先,登陆码云下载JSsearch: https://gitee.com/skyogo/JSsearch 我们下载JSsearch1.0 Community版本 下载好了之后我们再下载一个类似淘宝的购物页面(页面由达内童程制作…

自学电脑编程_有哪些高质量的自学网站

1、羽兔网羽兔网是一个以设计类为主的自学网站,有大量免费课程给大家学习,不管是平面设计,ui设计,电商设计各类热门设计软件课程都有。羽兔网-视频教程线上学​www.yutu.cn2、溜溜自学网一个热门专业为主的自学网,想学…

dw模板文件的扩展名_网站单页面模板制作和dede默认文件夹名称解释

之前我们已经完成了网站首页的制作,操作过就有经验了,其他的工作就简单很多。这里来说一下单页面的模板制作。一 、和首页一样,首先用仿站小工具输入要下载的单页面域名,下载网站内容,上次下载的首页内容可以删掉了二 …

vs新建网站选项只有wcf服务器,WCF教程一:新建并部署

一、概述Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口,它是.NET框架的一部分。由 .NET Framework 3.0 开始引入。WCF的最终目标是通过进程或不同的系统、通过本地网络或是通过Interne…

当你无法登录http://www.jetbrains.com/系列的网站

如果对您有用,希望能得到您的三连支持哦!!! 首先排除你的网络是否有问题(基本上都不是这个的问题) 接着就是看你的hosts的文件,因为我们都是因为使用破解包的时候修改了hosts文件,所以我来告诉你怎么解决…

给网站套上Cloudflare(以腾讯云为例)

Cloudflare 用来干什么 Cloudflare 主要能做以下几件事: CDNDDNS 说人话的话,上面这些有啥作用呢: 提升安全(抵御攻击、隐藏主站地址)提升性能(提升载入速度) 当然,Cloudflare 还…

主机备案租用价_云服务器与虚拟主机搭建网站有何不同?选择哪家好?哪家最优惠?...

云服务器与虚拟主机都可以搭建网站,很多小伙伴都傻傻的分不清。今天就详细说一下二者具体区别以及搭建网站难以程度,“工欲善其事必先利其器”要想知道二者不同处我们首先得知道云服务器与虚拟主机分别是什么!一、云服务器概念与其搭建网站的…