一、   主要抓包工具介绍与对比

1、Wireshark :通用抓包工具,抓取信息量庞大,需要过滤才能得到有用信息,只抓HTTP请求有点大财小用。

2、Firebug、HttpWatch等Web调试工具,不够给力,功能欠缺。

3、Charles:建议MAC上使用。

4、Fiddler:是一个HTTP协议调试代理工具;

①、是位于客户端和服务器的HTTP代理,它能记录所有客户端和服务器的HTTP和HTTPS请求响应,进行截获、重发、编辑、转存等操作;

②、允许监视、设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展。

二、   Fiddler界面概述

1.    主菜单

File文件:

File--->Capture Traffic启用或停止捕获;

File--->New Viewer 新窗口;

File--->Load Archive 存档;

File--->Recent Archive 最近文档;

File--->Save保存;

Save--->All Session... 全部会话;

Save--->Selected   Session 选择了的会话;

Save--->Request   请求;

Save--->Response 响应;

File--->Import Sessions导入会话;

File--->Export Sessions导出会话;

File--->Exit退出;

Edit编辑:

Edit--->Copy拷贝;

Copy--->Session拷贝整个Session;

Copy--->Just Url将选中session的url拷贝到剪贴板;

Copy--->Headers Only拷贝头信息,包括请求和返回的头信息;

Copy--->Full Summary将session列表显示的信息及表头复制到剪贴板,通过tab分割。便于在Excel或其他编辑器中查看编辑;

Edit--->Remove移除;

Remove--->Selected Sessions选择会话;

Remove--->Unselected Sessions反选会话;

Remove--->All Sessions全部会话;

Edit--->Select All选择全部;

Edit--->Undelete恢复之前删除的会话;

Edit--->Paste as Sessions作为会话粘贴文件;

Edit--->Mark标记所选的会话;

Mark--->Strikeout失败;

Mark--->Red红色;

Mark--->Blue蓝色;

Mark--->Gold金色;

Mark--->Green绿色;

Mark--->Orange橙色;

Mark--->Purple紫色;

Mark--->Unmark未标记;

Edit--->Unlock for Editing调为可编辑

Edit--->Find Sessions查找会话

Rules规则:

Rules--->Hide Image Requests隐藏图片请求;

Rules--->Hide HTTPS CONNECTs隐藏HTTPS连接;

Rules--->Automatic Breakpoints断点控制;

Automatic Breakpoints--->Before Requests请求之前;

Automatic Breakpoints--->After   Responses  响应之后;

Automatic   Breakpoints--->Disabled禁用;

Automatic Breakpoints--->Ignore   Images忽略图片;

Rules--->Customize Rules打开Fiddler ScriptEditor;

Rules--->Require Proxy Authentication密码代理验证;

Rules--->Apply GZIP Encoding采用GZIP编码;

Rules--->Remove All Encodings删除全部编码;

Rules--->Hide 304s隐藏304会话;

Rules--->Request Japanese Content要求日语内容;

Rules--->User-Agents支持把User-Agents请求头设置或替换成指定值;

Rules--->Performance提供影响web性能的简单选项;

Performance--->Simulate Modem   speeds模拟调制解调器速度;

Performance--->Disable Caching禁止缓存

Performance--->Cache Always   Fresh新的缓存

Tools工具:

Tools--->Options选项;

Tools--->WinINET Options WinINET选项;

Tools--->Clear WinINET Cache-清除WinINET缓存;

Tools--->Clear WinINET Cookies清除WinINET的Cookies;

Tools--->TextWizard文字编码解码;

Tools--->Compare Sessions比较会话;

Tools--->New Session Clipboard新会话写字板;

Tools--->HOSTS hosts配置;

Tools--->Reset Script重置脚本;

Tools--->Sandbox沙箱;

Tools--->View IE Cache查看IE缓存;

View视图:

View--->Show Toolbar显示工具条

View--->Default Layout默认布局

View--->Stacked Layout堆叠布局

View--->Wide Layout全部布局

View--->Tabs制表符

Tabs--->preferences偏好

Tabs--->autosave自动保存

Tabs--->apitest API测试

View--->Statistics统计

View--->Inspectors嗅探

View--->Composer构造

View--->Minimize to Tray关闭自托盘

View--->Stay on Top前端显示

View--->Squish Session List会话列表格式

View--->AutoScroll Session List自动滚动会话链表

View--->Refresh刷新

Help帮助:

Help--->Help帮助

Help--->Fiddler Book说明

Help--->Discussions社区讨论

Help--->HTTP References HTTP的参考

Help--->Troubleshoot Filters-故障排除

Help--->Check For Updates检测更新

Help--->Send Feedback发送反馈

Help--->Abou关于

2、快捷菜单

会话列表进行备注

Replay--->重新发送选中请求

Remove--->删除会话

Go--->打断点时使用

Stream--->点击为流模式,不点击为缓冲模式

缓冲模式:内容全部返回在发送到客户端;可以控制响应,修改响应数据,但是时序图有时候会出现异常;

流模式:收到内容立即发送给客户端;更接近真实浏览器的性能,速度快,时序图更准确(比如瀑布图),但是不能控制响应;

如果不需要AutoResponse和Fileters功能的话,一般使用缓冲模式;

Decode--->解码,默认勾选

Keep:All sessions--->保持全部会话

Any Process--->任何进程,精准定位

Find--->查找

Save--->保存

截屏

秒表

Browse--->打开浏览器

Clear Cache--->清除缓存

TextWizard--->编码解码小工具

Tearoff--->打开一个新窗口

MSDN Search--->MSDN关键字查找

3、 会话列表

#--->图标及序号

Result--->HTTP响应状态码

Protocol--->请求使用的协议

Host--->接受请求的服务器主机名和端口号

URL--->请求的服务器路径的文件名,也包括GET参数

Body--->请求的大小,以byte为单位

Caching--->请求的缓存过期时间或缓存控制header等值;响应头中Expires和Cache-Control字段的值

Content-Type--->请求响应的类型

Process--->发出此请求的Windows进程及进程ID;

Comment--->注释信息;

Custom--->用户可以通过脚本设置自定义值;FiddlerScript所设置的ui-CustomColumn标志位的值

 --->正在向服务器发送请求

-->正在从服务器下载响应

--->请求停止于断点处,允许对它进行修改

--->响应停止于断点处,允许对它进行修改

--->请求使用HTTP HEAD方法,响应没有body

--->请求使用POST方法向服务器发送数据

--->请求使用了HTTPCONNECT方法,使用HTTPS协议建立连接通道

--->响应是HTML内容

--->响应是图片

--->响应是脚本文件

--->响应是CSS文件

--->响应是XML

--->响应是JSON

--->响应是音频文件

--->响应是视频文件

--->响应是Silverlight程序

--->响应是Flash应用程序

--->响应是字体文件

--->通用响应成功

--->响应是HTTP/300,301,302,303,307重定向

--->响应是HTTP/304,使用缓存文件

--->响应需要一个客户端凭证

--->响应是一个Sever错误

--->会话被客户端或fiddler或Sever终止

HTTP状态: 红色表示错误,黄色表示认证

数据流类型: 灰色表示CONNECT

响应类型:紫色表示CSS,蓝色表示HTML,绿色表示script,灰色表示图像

4、会话右键

Decode Selected Sessions--->解码选择的session,一些Response body 会Encode。Decode后通常能解决乱码的问题;

AtuoScroll Session List--->自动滚动 Session List。当不断有新的session进入list时候,关闭此功能,更容易定位选择某一个或多个session;

Comment--->为一个或多个session添加注释;

Compare--->对比:选中两条session右键,就会出现Compare选项。这个功能是通过第三方的软件来实现,可以下载WinDiff.Exe放在Fiddler的安装目录下,或是下载WinMerge安装,安装时,注意将软件添加到系统环境变量中;

COMETPeek--->命令会保留正在执行的响应的“快照”,在响应完成前就可以查看部分内容。当web应用采用COMET模式以流式向客户端返回数据时,可以使用该命令。由于“流式”的含义就是永不结束,直有当服务端停止连接后,Fiddler才会返回响应;

Abort Session--->终止当前正在执行的请求;

Clone Response--->当Session列表中选中两个Session,并且其中一个Session在断点处中止,而另一个Session已经运行完成时才可用。该命令会把已经完成的Session的响应拷贝给暂停运行的Session;

Unlock For Editing--->使Session的请求和响应都可以在Inspector中编辑;

Inspect in New Windowns--->打开一个新的Session Inspector窗口;

Properties--->打开Session属性窗口,显示当前的Session信息;

 

Copy拷贝;
  Copy--->Just Url将选中session的url拷贝到剪贴板;

Copy--->This Column拷贝摘要,其中包括:请求方法,URL,响应状态码及状态信息。如果是重定向的HTTP/3xx,还会有该请求Response header中Location字段;

Copy--->Terse Summary简要;

Copy--->Headers Only拷贝头信息,包括请求和返回的头信息;

Copy--->Session拷贝整个Session;
  Copy--->Response DataURL拷贝响应的DataURI(一个特定资源的协议),格式规范:data:[<mime   type>][;charset=<charset>][;base64],<encoded data>,这项技术一般用于图片内嵌页面;
  Copy--->Full Summary将session列表显示的信息及表头复制到剪贴板,通过tab分割。便于在Excel或其他编辑器中查看编辑;

 

Save保存:

Save--->Selected Sessions选择Sessions;

Save--->Selected Sessions--->   in ArchiveZIP将选择的sessions保存为SAZ格式压缩文件;

Save--->Selected   Sessions--->as Text将所选Session保存为txt格式文件;

Save--->Selected Sessions--->   as Text(Headers only)将所选sessions的请求和响应头一起保存为txt格式文件;

 

Remove删除:

Remove--->Selected Sessions删除选中的sessions

Remove--->Unselected Sessions删除未选中的sessions;

Remove--->All Session删除所有sessions

 

Filter Now快捷过滤:

选中一个session右键会出现Filter Now选项,Fiddler会根据你选择的session快速生成隐藏/显示条件;

当我们选则隐藏某一个条件后,session list会隐藏符合条件的session;

 

Mark标记所选的会话:

Mark--->Strikeout失败;

Mark--->Red红色;

Mark--->Blue蓝色;

Mark--->Gold金色;

Mark--->Green绿色;

Mark--->Orange橙色;

Mark--->Purple紫色;

Mark--->Unmark未标记;

 

Replay重新请求此地址:

Replay--->Reissue Requests 将选中的请求以原来的形式重新发送。如果按住Shift键,可以键入重复次数。或是选中sessions后按Shift+R;

Replay--->Reissue   Unconditionally无条件的发送选中请求,告诉服务器不要返回HTTP/304响应,快捷键Shift+U;

Replay--->Reissue and Edit把选中的请求以原来的形式重新发送,在每个session中设置请求断点,在请求被发送到服务器前,使用Fiddler的Inspector修改请求;

Replay--->Reissue and Verify把选中的请求以原来的形式重新发送,验证Response状态码和Response body;

重新发送的请求会被标记出背景色,绿色代表验证通过,红色表示验证失败,在comments中会提示失败原因和对比的session id;

Replay--->Reissue Sequentially将选中的请求重新发送,等待前一个响应回来后,在发送下一个;

Replay--->Reissue from Composer将选中的请求克隆到Fiddler右侧的Composer模块中(Composer后续博客讲解);

Replay--->Revisit in IE将sessions的url在IE中打开。注意IE总是使用GET方法,而且用自己的header和cookie,不管session中提供了什么HTTP方法和请求头;

 

Select选择:

Select--->Parent Request当前请求是从那个页面来的,相当于当前请求头中的Refere字段值。鼠标放在session上按P键可执行;

Select--->Child Requests与1相反;

Select--->Duplicate Requests选中Session列表中和当前的Session的URL和HTTP方法相同的所有Session;

Select--->Matching Values值匹配选择,可以根据Session列表中的任意值匹配,鼠标放任意一列,点击Alt+左键,就会匹配出相同值的session;

5、选项卡

Statidtics--->对选中多个Sessions统计;

Inspectors--->请求头和响应体

AutoResponder--->重新定向

Composer--->模拟进行发送

FiddlerScript--->脚本

Log--->日志

Fiters--->过滤

Timeline--->瀑布流时间图

6、请求查看器

Headers--->请求头信息显示为一个分级视图,包含了web客户端信息、Cookie、传输状态等;

TextView--->显示POST请求的body部分为文本;

SyntaxView--->显示脚本(安装SyntaxView插件)

WebForms--->以直观的界面显示QueryString的值和Body的值,这里的Body应该是application/x-www-form-urlen-coded格式;

HexView--->请求内容的16进制显示;

Auth--->显示hearer中Proxy-Authorization和Authoriization信息;

Cookies--->以直观的界面显示Header中Cookie的值;

Raw--->将整个请求显示为纯文本;

JSON--->通过JOSN格式显示;

XML--->如果请求的body是XML格式,就是用分级的XML树来显示它;

7、响应查看器

Transformer--->响应信息的压缩编码格式;

Headers--->用分级视图显示响应的header;

TextView--->使用文本显示相应的body;

SyntaxView--->显示脚本(安装SyntaxView插件)

ImageView--->响应内容如果是图片则显示图片,左侧灰色区域会显示图片的大小、宽高、文件格式等信息,在下方还可以选择缩放模式:自动缩放、缩放以适应显示区域大小、无缩放;

HexView--->响应内容的16进制显示;

WebView--->;

Auth--->显示hearer中Proxy-Authorization和Authoriization信息;

Caching--->缓存;

Cookies--->以直观的界面显示Header中Cookie的值;

Raw--->将整个响应显示为纯文本;

JSON--->通过JOSN格式显示;

XML--->如果响应的body是XML格式,就是用分级的XML树来显示它;

Fiddler抓包【1】_介绍及界面概述的更多相关文章

  1. Fiddler 抓包的基本介绍

    一.什么是Fiddler? Fiddler是一种常见的抓包分析软件,我们可以使用它对HTTP请求进行分析,并模拟对应的HTTP请求. 二.Fiddler抓包实现的原理 Fiddler就相当于某二手车直 ...

  2. Fiddler抓包工具详细介绍

    本文转自:http://www.cnblogs.com/Chilam007/p/6985379.html 一.Fiddler与其他抓包工具的区别 1.Firebug虽然可以抓包,但是对于分析http请 ...

  3. Fiddler抓包4-工具介绍(request和response)

    前言 本篇简单的介绍下fiddler界面的几块区域,以及各自区域到底是干什么用的,以便于各好的掌握这个工具 一.工具简介 1.第一块区域是设置菜单,这个前面2篇都有介绍 2.第二块区域是一些快捷菜单, ...

  4. Fiddler抓包4-工具介绍(request和response)【转载】

    本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/p/6719717.html 前言 本篇简单的介绍下fiddler界面的几块区域,以及各自区域到 ...

  5. fiddler抓包详解

    image.png 前言 fiddler是一个很好的抓包工具,默认是抓http请求的,对于pc上的https请求,会提示网页不安全,这时候需要在浏览器上安装证书. 一.网页不安全 1.用fiddler ...

  6. Fiddler抓包工具介绍

    Fiddler官网 https://www.telerik.com/download/fiddler Fiddler原理 当你打开Fiddler工具的时候你会发现你浏览器的代理服务器被添加了127.0 ...

  7. Python+Requests接口测试教程(1):Fiddler抓包工具

    本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测 ...

  8. Fiddler抓包工具使用详解

    一.Fiddler简介 Fiddler是最强大最好用的Web调试工具之一, 它能记录所有客户端和服务器的http和https请求.允许你监视.设置断点.甚至修改输入输出数据.Fiddler包含了一个强 ...

  9. Fiddler抓取https请求 & Fiddler抓包工具常用功能详解

    Fiddler抓取https请求 & Fiddler抓包工具常用功能详解   先来看一个小故事: 小T在测试APP时,打开某个页面展示异常,于是就跑到客户端开发小A那里说:“你这个页面做的有问 ...

随机推荐

  1. 思维导图工具XMind

    思维导图工具XMind XMind简单介绍 官网地址:https://www.xmind.cn/ XMind 是一个全功能的思维导图和头脑风暴软件,为激发灵感和创意而生.作为一款有效提升工作和生活效率 ...

  2. chattr和lsattr的基本用法

    lsattr filename  查看一个文件的属性 chattr filename  改变一个文件的属性 主要用途:实现文件的原有内容不允许改变,但可以增加新行,则需通过改变文件的属性来实现. ch ...

  3. Jenkins环境搭建(4)-配置定时构建

    每次手动触发job构建,是很麻烦的一件事情,job中可以配置定时构建,今天就来分享下定时构建:构建分为两种:定时构建和轮询SCM. 一.定时构建 Jenkins采用了著名的UNIX任务调度工具CRON ...

  4. 动态规划——Best Time to Buy and Sell Stock III

    题意:用一个数组表示股票每天的价格,数组的第i个数表示股票在第i天的价格. 如果最多进行两次交易,但必须在买进一只股票前清空手中的股票,求最大的收益. 示例 1:Input: [3,3,5,0,0,3 ...

  5. 错误解决记录-------------验证启动HDFS时遇到的错误

    主要解决验证启动HDFS时: 1) jps:bash: jps: command not found... 原因:主要是java/bin 环境变量没配置好. 解决办法: 在  ~/.bash_prof ...

  6. Android源代码编译过程及指令

    编译Android源代码分为两种情况: 1. 完整编译源码: ./mk_aliphone.sh --> 完整编译脚本 --> 6735  输入对应的编号 --> userdebug ...

  7. JZOJ5431 捕老鼠

    JZOJ 5341 Description 为了加快社会主义现代化,建设新农村,农夫约(Farmer Jo)决定给农庄里的仓库灭灭鼠.于是,猫被农夫约派去捕老鼠. 猫虽然擅长捕老鼠,但是老鼠们太健美了 ...

  8. 【IT小常识】如何将IE手动升级或降级

    我们从浏览器任意下载一个我们需要安装的IE版本.可能部分电脑的IE版本不是微软正版的IE版本,所以无法通过更新来获取我们想要的IE版本. 下面,详细的讲一下如何如何手动升级IE或者吧IE降级. 一. ...

  9. 有关svn的报错

    由于目标计算机积极拒绝,无法连接.当报出这样的错的时候就是跨域的问题

  10. JS_ Date对象应用实例

    一.获取日期时间,秒数实时跳动 <!DOCTYPE html> <html lang="en"> <head> <meta charset ...