Fiddler抓包-自动保存会话

背景

对APP抓包,自动保存,为后面的工作做准备

预想流程为:利用appium模拟用户触发请求–》利用fiddler抓取请求–》验证请求是否符合预期。 
Fiddler的Customize Rules功能,支持用户添加脚本(Java Script)来实现自定义功能。 

用Fiddler抓取移动端请求,百度一下了,资料很多也很全

第一步:启动fiddler,并打开Fiddler ScriptEditor

点击顶部工作栏中的“Rules–》Customize Rules…”,如下图所示:

第二步:ctrl+f找到OnBeforeRequest函数

在此函数后面添加以下代码:

//过滤无关请求,只关注特定请求 
        if (oSession.fullUrl.Contains("填写需要抓取的域名")) { 
            var fso;
            var file; 
            fso = new ActiveXObject("Scripting.FileSystemObject");
            //文件保存路径,可自定义 
            file = fso.OpenTextFile("填写保存TXT文件地址",8 ,true, true); 
            file.writeLine("Request url: " + oSession.url); 
            file.writeLine("Request header:" + "\n" + oSession.oRequest.headers); 
            file.writeLine("Request body: " + oSession.GetRequestBodyAsString()); 
            file.writeLine("\n"); 
            file.close(); 

        }

再来查找 OnBeforeResponse这个函数,在函数末尾添加如下代码:

        //过滤无关请求,只关注特定请求 
        if (oSession.fullUrl.Contains("填写需要抓取的域名")) { 
            oSession.utilDecodeResponse();
            //消除保存的请求可能存在乱码的情况 
            var fso; 
            var file; 
            fso = new ActiveXObject("Scripting.FileSystemObject"); 
            //文件保存路径,可自定义 
            file = fso.OpenTextFile("填写保存TXT文件地址",8 ,true, true); 
            file.writeLine("Response code: " + oSession.responseCode); 
            file.writeLine("Response body: " + oSession.GetResponseBodyAsString()); 
            file.writeLine("\n"); 
            file.close(); 

        }

    OK,重启fiddler之后就可以开始抓包了,并能自动保存。
 

猜你喜欢

转载自blog.csdn.net/llq_the7/article/details/103789110
今日推荐