Fiddler 保存抓包请求/响应数据到本地(一)
最近要录入接口,一直没有接口文档看,这种情况只能自己主动抓包。这时 就可以用到Fiddler 来抓包,保存到本地数据,然后用导入postman 看是否能跑通。。
进入正题:
- 首先你得下个Fiddler (网上一大把)
-
进入Fiddler 后 在右侧菜单栏 找到FiddlerScript 并点击
-
Go to 旁下拉框找到 OnBeforeRequest 并点击进入到指定代码层
- 将下代码 粘到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(); }
-
最后点击左上方 Save Script 点击保存脚本 这时就可以抓到 请求的数据 保存本地txt 文件里面啦
同理 想抓到 响应的数据 保存 也是向上图一样 。。。
找到 OnBeforeResponse 的函数 将下代码 粘上 替换数据 保存就可以了啦!!!
还有一点 抓包的时候 会报错也是正常的行为 可以忽略~
if(oSession.host == 'xxx.com') { var filename = "D:/xxxt"; var logContent = oSession.fullUrl + "\n"; var sw = System.IO.StreamWriter; if (System.IO.File.Exists(filename)) { //是否有该文件夹 sw = System.IO.File.AppendText(filename); //有添加 sw.Write(logContent); } else{ sw = System.IO.File.CreateText(filename); //没有创建 sw.Write(logContent); } sw.Close(); sw.Dispose();