Fiddler工具的相关应用

一.Fiddler的原理:

        Fiddler是客户端和服务器端中间的HTTP代理服务器, 它能够记录客户端和服务器之间的所有 HTTP(S)请求,可以针对特定的HTTP(S)请求,分析网络传输的数据,还可以设置断点、修改请求的数据和服务器返回的数据;

        1) 客户端向WEB服务器发送HTTP(S)请求时,请求会先经过代理Fiddler代理服务器。
        2) Fiddler代理服务器截取客户端的请求报文,再转发到WEB服务器,转发之前可以做一些请求报文参数修改的操作。
        3) WEB服务器处理完请求以后返回响应报文,Fiddler代理服务器会截取WEB服务器的响应报文。
        4) Fiddler处理完响应报文后再返回给客户端。

二.Fiddler抓包的流程:

        1.https抓包配置:fiddler默认是不可以抓取https协议的,需要进行配置,在Fiddler的https设置里面勾选捕获https连接,点击actions选择将证书生成到桌面上,再在浏览器的证书管理中导入证书;重启fiddler。

        2.设置域名筛选:找到Fiters(筛选器)选项,勾选启用,hosts栏下拉选项选择'仅显示以下主机';下方的编辑框输入域名,如果多个域名用分号分隔。再下面有个Request Header栏,勾选Hide if URL contains(隐藏包含下面字符的URL),按提示的格式输入公式,隐藏掉包含js、css、png、google等的地址。配置好后就可以过滤掉不需要的信息,只抓取需要的接口信息

                公式:REGEX:(?insx)/[^\?/]*\.(css|ico|jpg|png|gif|bmp|wav|js|jpeg)(\?.*)?$

                          或REGEX:\.(js|css|png|google|favicon\?.*)+

                          或\.(css|ico|jpg|png|gif|bmp|wav|js|jpeg)

        3.打开fiddler,左下角capturing(获取)选项默认开启,先点击该选项,让其关闭;避免其他不需要的接口抓取到;

        4.操作系统到需要抓取的功能入口处,打开fiddler,左下角capturing选项打开抓取功能,操作系统,即可抓取到该操作对应的接口;

        5.Fiddler左侧面板:显示抓取到的接口,可以查看响应状态、使用的协议、请求的域名/ip、url地址、Body请求的大小、ContentType请求响应的类型;

        6.Fiddler右侧面板:主要看inspectors(检查页签),上部分为Request(请求)展示,下部分为Response(响应)展示;都可以通过headers、textview、hexview,Raw等多种方式查看单条http请求的请求报文的信息

三.Fiddler设置断点:

        请求前断点:修改Request的参数

                1.抓取接口,获取接口地址

                2.fiddler左下角有一个快捷输入框,点击该输入框,输入bpu+空格+接口url地址,回车;


                3.操作界面,当执行到该接口对应的功能时,会被fiddler抓包识别,对应的操作在界面中就会显示为加载中,此时查看fiddler截取到的请求数据可以编辑


                4.右侧的Request框点击Raw选项修改返回值


                5.修改完成后,然后点Run to Comple;检查界面就会根据修改的后的参数返回服务端响应的数据;

                6.输入bpu,取消断点

        请求后断点:修改Response的参数       

                1.与上述步骤相同,在快捷输入框输入bpafter+空格+接口url地址,回车;

                2.操作界面,当执行到该接口对应的功能时,会被fiddler抓包识别,对应的操作在界面中就会显示为加载中,此时查看fiddler截取到的响应数据可以编辑

                3.右侧的Respone框找到点击Break on Response,然后在TextView或Raw修改返回值

                4.修改完成后,然后点Run to Comple;检查界面就会显示自己构造的数据

四.用fiddler做简单的并发测试:

        1.选中请求

        2.按shift+u,弹出并发次数的设置

        3.点击ok,次数会话列表就多出5个请求

五.用fiddler做接口测试:

        1.点击Composer选项

        2.选择请求方式、填写接口地址、上方面编辑框输入请求头信息、下方编辑框输入参数信息;点击右上角的Exceute按钮即可发起请求

        3.发起后左侧框会生成一条接口请求的数据,点击即可在右侧查看接口的响应信息

六.fiddler添加接口响应时间:

        1.打开定制规则文件:

        2.添加这段代码,重启fiddler即可看到列表新增了响应时间列

    public static BindUIColumn("TimeTaken/ms", 120)
    function TimeTaken(oS: Session):String{
        var sResult = "0";
        var t1_ms = oS.Timers.ClientBeginResponse.ToUniversalTime().Millisecond;
        var t1_m = oS.Timers.ClientBeginResponse.ToUniversalTime().Minute;
        var t1_s = oS.Timers.ClientBeginResponse.ToUniversalTime().Second;
        var t1 = t1_m*60*1000 + t1_s*1000 + t1_ms ;
 
        var t2_ms = oS.Timers.ClientDoneRequest.ToUniversalTime().Millisecond;
        var t2_m = oS.Timers.ClientDoneRequest.ToUniversalTime().Minute;
        var t2_s = oS.Timers.ClientDoneRequest.ToUniversalTime().Second;
        var t2 = t2_m*60*1000 + t2_s*1000 + t2_ms ;
 
        if(t1 >= t2){
            var t3 =  t1 - t2;
            sResult = t3.toString();
        }
        return sResult;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值