Fiddler抓包使用教程-基本功能介绍

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72932886
本文出自【赵彦军的博客】

Fiddler 基本页面

会话列表功能介绍

标识符 含义
# Fiddler为Session生成的ID
Result 响应状态码
Protocol 该Session使用的协议(HTTP/HTTPS/FTP)
Host 接收请求的服务器的主机名和端口号
URL 请求URL的路径、文件和查询字符串
Body 响应体中包含的字节数
Caching 响应头中Expires和Cache-Control字段的值
Content-type 响应的Content-type头
Process 数据流对应的本地Windows进程
Comments 通过工具栏Comment按钮设置的注释信息
Custom FiddlerScript所设置的ui-CustomColumn标志位的值

这个排序不是固定的,可以通过鼠标拖拽来改变顺序。

清空会话列表

快捷功能

  • 第一个是Capturing,控制捕获会话的快捷开关;
  • 第二个是选择当前需要捕获的会话的来源程序,所有程序、浏览器、非浏览器、都不捕获选项。
  • 第三个是会话request发送前的断点和response返回后且到浏览器前的断点,分别对应点一次,点两次该按钮(默认是空白即不设断点),request断点和response断点详情中详解
  • 后面的而是当前选中会话的一些标识和描述。

会话列表复制

  • Just Url : 复制完整 url 请求串
http://jcenter.bintray.com/com/yiba/wifisdk/maven-metadata.xml
  • This Column : 复制这个列的内容
  • Terse Summary : 复制一个简洁的请求
GET http://jcenter.bintray.com/com/yiba/wifisdk/maven-metadata.xml
200 OK (application/xml)
  • Headers only : 复制请求的Header
GET http://jcenter.bintray.com/com/yiba/wifisdk/maven-metadata.xml HTTP/1.1
cache-control: no-cache
Postman-Token: 94f573ac-0f86-439a-9262-d786d00470c1
User-Agent: PostmanRuntime/3.0.9
Accept: */*
Host: jcenter.bintray.com
accept-encoding: gzip, deflate
Connection: keep-alive

HTTP/1.1 200 OK
Server: nginx
Date: Tue, 13 Jun 2017 08:21:51 GMT
Content-Type: application/xml
Content-Length: 690
Connection: keep-alive
Content-Disposition: attachment; filename="maven-metadata.xml"
Last-Modified: Wed, 19 Apr 2017 07:49:26 GMT
Cache-Control: max-age=30, must-revalidate
Accept-Ranges: none
ETag: ce4d1b808ee1a5fa564c72bee9b3db05561adac7b23dfb8a031680683641aba5
X-Checksum-Sha1: 55cd7ab9857f50839f6c91d8bd14494b16822a33
X-Checksum-Sha2: ce4d1b808ee1a5fa564c72bee9b3db05561adac7b23dfb8a031680683641aba5
  • Session : 复制 Session
GET http://jcenter.bintray.com/com/yiba/wifisdk/maven-metadata.xml HTTP/1.1
cache-control: no-cache
Postman-Token: 94f573ac-0f86-439a-9262-d786d00470c1
User-Agent: PostmanRuntime/3.0.9
Accept: */*
Host: jcenter.bintray.com
accept-encoding: gzip, deflate
Connection: keep-alive

HTTP/1.1 200 OK
Server: nginx
Date: Tue, 13 Jun 2017 08:21:51 GMT
Content-Type: application/xml
Content-Length: 690
Connection: keep-alive
Content-Disposition: attachment; filename="maven-metadata.xml"
Last-Modified: Wed, 19 Apr 2017 07:49:26 GMT
Cache-Control: max-age=30, must-revalidate
Accept-Ranges: none
ETag: ce4d1b808ee1a5fa564c72bee9b3db05561adac7b23dfb8a031680683641aba5
X-Checksum-Sha1: 55cd7ab9857f50839f6c91d8bd14494b16822a33
X-Checksum-Sha2: ce4d1b808ee1a5fa564c72bee9b3db05561adac7b23dfb8a031680683641aba5

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>com.yiba</groupId>
  <artifactId>wifisdk</artifactId>
  <version>2.1.8</version>
  <versioning>
    <latest>2.1.8</latest>
    <release>2.1.8</release>
    <versions>
      <version>1.5.1</version>
      <version>2.0.0</version>
      <version>2.0.1</version>
      <version>2.1.0</version>
      <version>2.1.1</version>
      <version>2.1.2</version>
      <version>2.1.3</version>
      <version>2.1.4</version>
      <version>2.1.5</version>
      <version>2.1.6</version>
      <version>2.1.7</version>
      <version>2.1.8</version>
    </versions>
    <lastUpdated>20170419074926</lastUpdated>
  </versioning>
</metadata>

从结果可以看到 : Session = Headlers + 请求结果

  • Response DataURL : 响应数据URL
  • Full Summary : 复制完整的会话列表内容
#   Result  Protocol    Host    URL Body    Caching Content-Type    Process Comments    Custom
15642   200 HTTP    jcenter.bintray.com /com/yiba/wifisdk/maven-metadata.xml    690 max-age=30, must-revalidate application/xml postman:5532    

会话列表保存

  • in ArchiveZip:把 Sessions 保存为一个Fiddler 可以执行的文件,文件后缀 .saz。

双击这个文件,可以用 Fiddler 打开,并且重新发起请求。

  • as Text… :把 Sessions 保存为一个文本文件

  • as Text( Headers only)…:把 Sessions 里面的 Headers 保存为文本文件

会话列表移除

  • Selected Sessions : 移除选择的 Session
  • Unselected Sessions : 除了选择的Session , 移除其他所有的 Session
  • All Sessions : 移除所有的 Sessions

会话列表过滤

在会话列表界面,有一个很实用的过滤请求的功能。

  • Hide ‘postman’ : 隐藏所有从 postman 发出的请求
  • Hide Process =5532 : 隐藏进程为 5532 的所有请求
  • Show Only Process = 5532 : 只显示进程为 5532 的所有请求
  • Hide ‘jcenter.bintray.com’ : 隐藏host为 ‘jcenter.bintray.com’ 的请求
  • Hide ‘/com’ : 隐藏请求URL包含 ‘/com ’ 的请求
  • Hide Url : 隐藏用户指定的 URL 请求
  • Hide ‘application/xml’: 隐藏请求类型为 ‘application/xml’ 的请求

会话列表备注

会话列表标记

可以把会话列表中的 Sessions 标记为特殊的颜色

  • Strikeout : 加删除线
  • Red : 红色
  • Blue : 蓝色
  • Gold : 金色
  • Green : 绿色
  • Orange : 橙色
  • Purple : 紫色
  • Unmark : 取消标记

会话列表重放-replay

replay 顾名思义就是重新执行请求。用这个功能可以很方便的多次请求。

在 Fiddler 工具栏中有一个快捷图片。

当然这还不够,会话列表中,我么右键下拉框中有 Replay 选项,这个选项提供了丰富的重放条件。

Reissue : 重发、再版、改版

unconditionally : 无条件的

Sequentially : 顺序的、继续

Composer : 制定者、设计者
  • Reissue Requests : 重新请求 。如果有多个请求,则同时进行,相当于多线程。
  • Reissue Unconditionally:无条件重新请求
  • Reissue Edit:重新请求并且可以编辑。
  • Reissue Verify : 重新请求并且可以验证 。 发起的请求会有绿色的标记。
  • Reissue Sequentially : 顺序的重新发起请求。 如果有多个请求,则顺序进行,相当于单线程。
  • Reissue from Composer: 从制定的请求中发起请求。点击这个按钮会跳转到 Composer 选项卡。
  • Revisit in IE : 在 IE 浏览器中执行此请求。 点击这个按钮会打开 IE 浏览器。

Statistics 请求统计

通过陈列出所有的 HTTP 通信量,Fiddler 可以很容易的向您展示哪些文件生成了您当前请求的页面。使用Statistics页签,用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化。

统计选项卡的一些信息含义如下解释:

  • Request Count: 选中的session数;
  • Unique Hosts: 流量流向的独立目标主机数。如果所有选中的流量都发送到相同的服务器上,则不会显示该字段。
  • Bytes sent: HTTP请求头和请求体中向外发送的字节总数。后面括号中分别给出了头和body各自的字节数。
  • Bytes received: HTTP请求头和请求体中接收到的所有字节数。在全部计数后面的括号中给出了请求头和请求体各自的字节数。
  • Requests started at: Fiddler接收到的第一个请求的第一个字节的时间点。
  • Responses completed at: Fiddler发送到客户端的最后一个响应的最后一个字节的时间点。
  • Sequence(clock) duration: 第一个请求开始到最后一个响应结束之间的 “时钟时间”。
  • Aggregate session duration: 所有选中的session从请求到响应之间的时间的和。
  • DNS Lookup time: 所有选中的session解析DNS所花费的时间的总和。
  • TCP/IP Connect duration: 所有选中session建立TCP/IP连接所花费的时间总和。
  • HTTPS Handshake duration: 所有选中session在HTTPS握手上所花费的时间总和。
  • Response Codes: 选中session中各个HTTP响应码的计数。
  • Response Bytes by content-type: 选中session中响应的各个Content-Type的字节数。
  • Estimated Performance: 选中的流量在不同语种(local)地区和连接方式下所需时间的初步估计。

Inspectors 选项卡

翻译

Inspectors [ɪn'spektər]]
原型、检查员、巡查员

Inspectors : 上半部分是请求头部分,下半部分是响应头部分。

对于每一部分,提供了多种不同格式查看每个请求和响应的内容。JPG 格式使用 ImageView 就可以看到图片,HTML/JS/CSS 使用 TextView 可以看到响应的内容。Raw 标签可以查看原始的符合 HTTP 标准的请求和响应头。Auth则可以查看授权Proxy-Authorization 和 Authorization的相关信息。Cookies标签可以看到请求的cookie和响应的set-cookie头信息。

请求 (Request) 部分详解

  • Headers —— 显示客户端发送到服务器的 HTTP 请求的 header,显示为一个分级视图,包含了 Web 客户端信息、Cookie、传输状态等.
  • Textview —— 显示 POST 请求的 body 部分为文本
  • WebForms —— 显示请求的 GET 参数 和 POST body 内容,特别说明,这里 body 应该是 application/x-www-form-urlen-coded 格式
  • HexView —— 用十六进制数据显示请求
  • Auth —— 显示 header 中的 Proxy-Authorization 和 Authorization 信息
  • Raw —— 将整个请求显示为纯文本
  • XML —— 如果请求的 body 是 XML 格式,就是用分级的 XML 树来显示它

响应 (Response) 部分详解

  • Transformer —— 显示响应的编码信息

顶部的黄色提示文字表示,此请求为了提高性能,而做了编码或者压缩(例如 GZIP),需要转换后才能在 TextView 里正常浏览。点击该区域或者下面的 Remove HTTP Chunked Encoding 按钮,都能执行转换或者解压缩。如果该请求没编码/压缩是看不见此提示的。

HTTP Compression 显示当前请求使用的编码方式

  • No Compression —— 无压缩
  • GZIP Encoding —— GZIP 压缩
  • DEFLATE Encoding —— DEFLATE 压缩
  • BZIP2 Encoding —— BZIP2 压缩

对未编码压缩的请求,可以选择不同的模式,看 Entity Size 里显示压缩后有多大。从而根据这个决定是否需要采用这样的压缩技术来提升网站的性能。

  • Headers —— 用分级视图显示响应的 header
  • TextView —— 使用文本显示相应的 body
  • ImageVies —— 如果请求是图片资源,显示响应的图片。

  • HexView —— 用十六进制数据显示响应
  • WebView —— 响应在 Web 浏览器中的预览效果
  • Auth —— 显示响应 header 中的 Proxy-Authorization 和 Authorization 信息
  • Caching —— 显示此请求的缓存信息
  • Privacy —— 显示此请求的私密 (P3P) 信息
  • Raw —— 将整个响应显示为纯文本
  • XML —— 如果响应的 body 是 XML 格式,就是用分级的 XML 树来显示它

Composer 选项卡:创建请求

右边是请求历史记录。只要点击 Execute 按钮,就会在会话列表中显示请求的 Session 。用这个可以模拟 http 请求。



个人微信号:zhaoyanjun125 , 欢迎关注

时间: 2024-09-30 06:34:44

Fiddler抓包使用教程-基本功能介绍的相关文章

Fiddler抓包使用教程-扫盲篇

Fiddler抓包使用教程-扫盲篇 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72823370 本文出自[赵彦军的博客] 1.什么是抓包? 不同主机之间的数据通信都是通过网络来进行传输,对那些在网络上传输的数据(发送.请求的数据)进行截获.编辑.转存等操作叫做抓包.抓包可以是抓取电脑端请求的数据,还可以抓取移动端(手机APP)的数据包. 2.为什么要进行抓包? 通过对网络上传输的数据进行抓取,可以对其进行分析,对于软件的De

Fiddler抓包使用教程-会话图标

Fiddler抓包使用教程-会话图标 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72933882 本文出自[赵彦军的博客] 使用fiddler抓包时,会看到左侧按照顺序显示session,并且前边有个图标,但通常,不知道图标是什么意思. 参考官方文档:UIGuide 这里尤其注意"锁图标"这里写图片描述,它用来标记,在网络环境受限时,为https建立http tunnel 响应是图片 个人微信号:zhaoyanju

Fiddler抓包使用教程-模拟低速网络环境

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/73467267 本文出自[赵彦军的博客] 在无线测试中,网络测试是必不可少的环节,通过网络限速查看页面渲染等效果,能有效保障低速网络下的用户体验和页面性能.Fiddler可通过延迟发送或接收数据的时间来限制网络的下载速度和上传速度,从而达到限速的效果. 开启限速 performance : 表现; 表演; 演技; 执行; Simulate : 模拟; 模仿; 假装,冒充; [生]

Fiddler抓包使用教程-Android应用抓包

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/74439165 本文出自[赵彦军的博客] Fiddler 也可以支持对手机应用进行 http 抓包的 . 1.启动Fiddler,打开菜单栏中的 Tools > Fiddler Options,打开"Fiddler Options"对话框. 2.在Fiddler Options"对话框切换到"Connections"选项卡,然后勾选&q

Fiddler抓包使用教程-Https

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72956016 本文出自[赵彦军的博客] 开启 Https 抓包 Fiddler 默认下,Fiddler不会捕获HTTPS会话,需要你设置下. from all processes : 抓取所有的 https 程序, 包括 本机 和 手机 from browsers only : 只抓取浏览器中的 https 请求 from non-browsers only : 只抓取除了浏览器

Fiddler抓包使用教程-乱码处理 Decode

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/73350344 本文出自[赵彦军的博客] 在 Fiddler 的工具栏中有一个 Decode 功能,一直不知道是干嘛用的. 从一个简单的接口说起 最近在调试一个接口,服务器返回值只有一个数字:1 . 但是在 Fiddler 上看到的确实这样的: 可以看到 Response 中的结果已经变成乱码了, 然后我在 2 的位置上看到了一个提示: Response body is encod

Fiddler抓包使用教程-QuickExec

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/73468287 本文出自[赵彦军的博客] 在 Fiddler 中自带了一个 QuickExec 命令行,用户可以直接输入并快速执行脚本命令. 常见命令 help 打开官方的使用页面介绍,所有的命令都会列出来 ? 列表中把包含 baid.com 的关键字的 session 高亮显示 ?baidu.com 用来选择png后缀的图片 ?.png cls cls 清屏 或者快捷键:Ctrl

Fiddler抓包使用教程-安装配置

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72956287 本文出自[赵彦军的博客] Fiddler是什么? Fiddler是一个http调试代理,它能 够记录所有的你电脑和互联网之间的http通讯,Fiddler 可以也可以让你检查所有的http通讯,设置断点,以及Fiddle 所有的"进出"的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思). Fiddler 要比其他的网络调试

Fiddler抓包使用教程-断点调试

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/62896784 本文出自[赵彦军的博客] Fiddler 里面的断点调试有2种方式. 一种用工具栏中的按钮来设置断点,特点是会拦截所有的请求. 一种用命令行的形式来设置断点 , 特点是拦截某个请求. 工具栏断点 Before Requests : 在请求前断点 After Responses : 在服务器响应之后断点. Disabled : 禁止断点 命令行断点 bpu url :