zoukankan      html  css  js  c++  java
  • 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 请求。

  • 相关阅读:
    Python--魔法方法
    Flask之request实现思想
    关于python一切皆对象的理解
    python快速生成依赖包
    redis的安装和使用
    linux-环境变量的配置
    python-虚拟环境的配置
    11-Linux-系统服务
    10-Linux-进程管理
    [SCOI2014]方伯伯的玉米田
  • 原文地址:https://www.cnblogs.com/ceshi2016/p/7520247.html
Copyright © 2011-2022 走看看