抓包工具01---fillder

一、抓包简介

打开之后自动设置浏览器本地代理,可以查看ie浏览器,关闭fillder后,设置的代理自动关闭

 

 

 获取响应的名词解释:

 

Statistics统计页签:
通过该页签, 用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。选择第一个请求和最后一个请求, 可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多, 从而对页面的访问进行访问速度优化
inspectors检查页签:
它提供headers、textview、hexview,Raw等多种方式查看单条http请求的请求报文的信息,它分为上下两部分:上部分为HTTP Request(请求)展示,下部分为HTTPResponse(响应)展示
AutoResponse自动响应页签:
Fiddler最实用的功能, 它可以抓取在线页面保存到本地进行调试, 大大减少了在线调试的困难, 可以让我们修改服务器端返回的数据, 例如让返回都是HTTP404或者读取本地文件作为返回内容。
可设置打开某网页显示自己想要的内容,比如抓取百度链接,点击add rule,
composer构建页签:
支持手动构建和发送HTTP, HTTPS和FTP请求, 我们还可以从web session列表中拖曳session, 把它放到composer选项卡中, 当我们点击Execute按钮, 把请求发送到服务器端
log日志页签:
打印日志
Filters过滤页签:
过滤器可以对左侧的数据流列表进行过滤, 我们可以标记、 修改或隐藏某些特征的数据流。
Timeline时间轴页签:
时间轴,也称为Fiddler的瀑布图,展示网络请求时间的功能。 每个网络请求都会经历域名解析、建立连接、发送请求、接受数据等阶段。把多个请求以时间作为 X 轴, 用图表的形式展现出来, 就形成了瀑布图。 在左侧会话窗口点击一个或多个(同时按下 Ctrl 键),Timeline 便会显示指定内容从服务端传输到客户端的时间

 

二、功能说明

  1. 字段说明

      Capture Traffic(捕捉流量)是开启,在File –> Capture Traffic

 

 

 

 

 

 显示的图标可以根据实际抓包进行分析

2.过滤器 filters

 

 

 

 

 

 3.转码工具

 

 

 

 

 

4.设置断点

为何设置断点:

有时需要对某人输入值跳过前端的控制,直接通过接口传输,需要校验后端是否控制住(一般针对post接口,然后修改的数据为非前端控制的数据)

如何设置:

1.首先需要设置断点

2.然后在web/app上进行执行抓取接口,

3.在fillder上修改传入的参数

4.进行提交即可查看是否能够提交成功,成功后端未控制输入,不成功后端进行控制了

 

 

 

 

 

 

 

5.改变请求值 composer

类似于设置断点进行接口传值,但composer进行修改值,不用设置断点,可以直接操作

 

 

 

6.设置hosts值

设置代理场景,例如:

公司的协议之前为http,可以进行抓包,但改成https协议的时候,测试环境抓包测试就需要设置hosts代理将https进行映射到对应的服务器地址,才能正常进行抓包测试

 比如:10.197.236.210 bmcapp.hikcreate.com

 

7.慢网络测试(限制网速)

  • 1、Fiddler---》Rules---》Customize Rules ,
  • 2、在CustomRules.js里搜索找到:m_SimulateModem,
  • 3、在如下脚本中修改上传及下载延时毫秒数即可:
if (m_SimulateModem) {

        // Delay sends by 300ms per KB uploaded.

        oSession["request-trickle-delay"] = "300"; 

        // Delay receives by 150ms per KB downloaded.

        oSession["response-trickle-delay"] = "150"; 

    }

修改完成后,重启下fiddler,Rules---->Performance---->Simulate Modem Speeds,选中即可生效。

  • 首先来判断m_SimulateModem是否为true,也就是是否设置了弱网模式。

  • 如果为弱网模式。则分析代码

  • oSession[“request-trickle-delay”] = “300”; 注释的也很明白,Delay sends by 300ms per KB uploaded.上传1KB需要300ms,转化一下上传速度:1Kb/0.3s = 10/3(KB/s)

  • 如果你想设置上传的速度为50KB/s,你则需要设置Delay 时间为 20ms

  • 同样的方法,也可以限制上传的速度,调整oSession[“response-trickle-delay”]即可。

  • 同时可以查看Timerline和statistics

 

 

8.设置响应时间

瀑布图/请求响应时间 Timeline

 

 

9.在请求列表显示响应时间(Time Taken)

第一种方法: rule-Customize Rules (如果报错,说明文件已经损坏需要重新下载)

 文本中添加java代码:

function BeginRequestTime(oS: Session)
{
    if (oS.Timers != null)
    {
        return oS.Timers.ClientBeginRequest.ToString();     
    }
    return String.Empty;
}


 public static BindUIColumn("Time Taken")
           function CalcTimingCol(oS: Session){
             var sResult = String.Empty;
             if ((oS.Timers.ServerDoneResponse > oS.Timers.ClientDoneRequest))
             {
               sResult = (oS.Timers.ServerDoneResponse - oS.Timers.ClientDoneRequest).ToString();
             }
             return sResult;
           }

 第二种方法:在FiddlerScript模块里面添加如下一段代码,保存(Save Script),重启fiddler,即可在左侧请求栏直观查看服务请求响应时间

 

 

 

 

 

三、https

可以设置hosts代理,导入证书,目前接触比较少,待后面遇到了补充

四、fillder 抓包手机

1.fillder开启远程连接

 

2.电脑端 ctrl+R 打开cmd 进入dos命令,ipconfig 查询到电脑的ip地址

3.手机和电脑连接同一网络,选中wifi设置代理电脑ip+端口号

 

 

 

 

五、内置命令

 

 

 

 

 六、使用中常见问题

 

1.手机无法连接网络,app无法使用连接提示网络问题,

解决方法 :没有打开fillder,或者手机重新打开了fillder需要重新设置代理)

2.钉钉应用出现问题,图片打不开,出现裂痕,无法进行打卡, 

解决方法:需要关闭代理

3.连接代理有可能引起文件或者图片的传输,

解决方法:测试的时候考虑响应时间,可以先暂时关闭掉fillder

 

 七、其他

导出请求数据(导出数据未json格式可以用json在线处理工具进行查看)

 

posted @ 2020-06-19 16:55  mollsweet  阅读(1222)  评论(0)    收藏  举报