--fiddler--實戰--抓包到底幹嘛用?
一、如何顯示請求花費的時間
背景 :在專案中,客戶端會根據服務端響應的時間來決定走哪條業務分支,之前是通過開發人員列印的log日誌來驗證服務端消耗的時間,比較麻煩。就想著Fiddler能不能獲得一個請求花費的時間呢,還真的就找到了一個方法,今天就和大家分享一下:
需求 :Fiddler顯示請求花費的時間
思路 :Fiddler工具除了可以捕捉Request和Response,還會捕捉請求的效能資料,比如客戶端傳送請求的時間,服務端獲得請求的時間等等,我們可以計算不同時間點的差值來獲得中間的消耗時間。
步驟:
1、檢視Session Properties,右鍵點選請求—>選擇Properties
2、彈出框如下圖所示,可以看到 TIMING INFO ,展示所有和時間相關的效能資料。
3、獲得一個請求花費的時間,應該是伺服器完成響應的時間點(ServerDoneResponse)—客戶端完成請求的時間點(ClientDoneRequest)。
4、捋順了思路,就可以coding了。
CustomRules.js指令碼文件調整如下:
class Handlers
{
... ...
//增加一列來顯示消耗的時間,列頭為:TimeTaken/ms
public static BindUIColumn("TimeTaken/ms" ,120)
function TimeTaken(oS: Session): String{
//先賦值空的字串
var sResult = String.Empty;
//將時間點轉成ms值
var t1 = oS.Timers.ServerDoneResponse.Millisecond;
//FiddlerObject.log("t1: "+t1);
var t2 = oS.Timers.ClientDoneRequest.Millisecond;
//FiddlerObject.log("t2: "+t2);
if(t1 > t2){
//兩者的差值就是請求消耗的時間
var t3 = t1-t2;
sResult = t3.ToString();
FiddlerObject.log("t3: "+t3);
}
return sResult;
}
... ...
}
實現結果如下圖所示,消耗214ms:
二、讀寫本地txt檔案
在Fiddler的api中提供兩個方法來讀寫本地的txt檔案,LoadRequestBodyFromFile()和SaveRequsetBody()。今天我要和大家分享另外一種讀寫本地txt檔案的方法。
第一步:定義方法
static function readFile(filename)
{
//FiddlerObject.alert("readFile");
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.OpenTextFile(filename,1);
var s = "";
while (!f.AtEndOfStream)
s += f.ReadLine()+"\n";
f.Close();
// FiddlerObject.alert(s);
return s;
}
//往本地檔案中寫內容
static function writeFile(filename,context)
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.OpenTextFile(filename,2);
f.write(context);
f.Close();
}
第二步:呼叫方法
if (oSession.HostnameIs("sdk.api.kaffnet.com") ) {
oSession["ui-color"] = "orange";
var body = oSession.GetRequestBodyAsString();
//將請求body寫入本地檔案中
writeFile("D:\\readFile.txt",body);
//從本地檔案讀取資料作為請求body
var string = readFile("D:\\jiemi_sdk.txt");
body = string;
oSession.utilSetRequestBody(body);
}
你可能會有疑問,fiddler的api已經提供了簡單方便的方法,你為何還有大費周章的來自己寫方法呢?其實我想表達的是,Fiddler工具既然允許我們修改js文件來實現不同的功能,那麼我們就應該好好地利用這樣的優勢來為我們服務。如何才能高效的使用fiddler,我們唯有充分地瞭解它才能夠“對症下藥”。想要在Fiddler的地基上蓋出漂亮的房子只有靠自己不斷的探索擴充套件。
言歸正傳,readFile()和writeFile()方法的實現過程,你看著有木有很眼熟呢?這個不就是js讀寫本地txt文件嗎?!是的,沒錯,就是JS!JS!!JS!!!
CustomRules.js就是用JS寫的,是不是頓時覺得CustomRules.js你也可以很輕鬆很easy的修改調整,那麼就趕快和我一起行動起來吧。
順著這個思路呢,我又寫了讀寫本地excel文件的方法,不過fiddler的api中可沒有提供讀寫excel的方法哦?!
三、讀寫本地excel檔案
//讀取本地excel的方法
static function readExcel(filename,apk,key,version,code)
{
//建立Excel.Application物件
var oXL = new ActiveXObject("Excel.application");
//開啟指定路徑的excel檔案
var oWB = oXL.Workbooks.open(filename,8)
//操作第一個sheet(從一開始,而非零)
oWB.worksheets(1).select();
var oSheet = oWB.ActiveSheet;
//多少行
var rows = oSheet.usedrange.rows.count;
//多少列
//var colcount=oSheet.UsedRange.Cells.Count ;;
//特殊excel讀取都是從1開始
try{
for (var i = 2; i <= rows; i++) {
if(oSheet.Cells(i,1).value == apk){
//FiddlerObject.alert(oSheet.Cells(i,1).value);
//為單元格賦值
oSheet.Cells(i,5).value = key;
oSheet.Cells(i,6).value = version;
oSheet.Cells(i,7).value = code;
oWB.save();
}
}
}catch(e){
}
//FiddlerObject.alert("save");
oWB.close();
//退出操作excel的例項物件
oXL.Application.Quit();
}
這個方法有結合我實際的業務需要,大家可以自行提取自己需要的部分。
相關推薦
--fiddler--實戰--抓包到底幹嘛用?
一、如何顯示請求花費的時間背景 :在專案中,客戶端會根據服務端響應的時間來決定走哪條業務分支,之前是通過開發人員列印的log日誌來驗證服務端消耗的時間,比較麻煩。就想著Fiddler能不能獲得一個請求花費的時間呢,還真的就找到了一個方法,今天就和大家分享一下:需求 :Fidd
iOS 10.3下解決Fiddler代理抓包ssl證書信任問題
設置 自定義 安裝 通用 ios 更新 nbsp 默認 進一步 iPhone系統更新到iOS 10.3以後,設置fiddler代理抓包,會出現無法抓取https請求,app請求失敗的問題 這是因為在iOS 10.3之前,當你將安裝fiddler的自定義證書後,iOS會默認信
fiddler手機抓包,支持前端代碼調試
前端 ipv4 通過 代理 信息 局域網 被占用 mark 安卓系統 手機用fiddler抓包 電腦最好是筆記本,這樣能和手機保持統一局域網內;其他不多說,直接說步驟了。 一.對PC(筆記本)參數進行配置 1. 配置fiddler允許監聽到https(fiddler默
Fiddler手機抓包軟件簡單使用
使用 簡單 ddl con 步驟 http代理 http協議 .cn ffffff 此文章是博主自己所寫,轉載請註明出處 一、簡介 Fiddler是一個http協議調試代理工具,它能夠記錄並檢查所有你的電腦和互聯網之間的http通訊,設置斷點,查看所有的“進出”Fidd
fiddler+android抓包工具配置使用
row and fig 端口 沒有 ces 其他 nor 如何配置 今天臨時增加一個工作,手機需要抓包,查看了不同的抓包工具,最後確定使用fiddler抓包工具進行操作,這裏以android為例記錄一下工具的配置和使用操作。 fiddler的安裝 網上有很多fiddler的
Fiddler 手機抓包學習記錄
accept ogl con 服務 比較 好的 信息 for 執行 記錄下個人手機(IOS+Android)抓包的學習過程,寫的比較簡陋,網絡上也有很多大佬寫的使用文檔,如有雷同,純屬個人學習記錄。Fiddler工具相對其他同類工具來說 ,個人使用很好,推薦使用。1.電腦上
記fiddler手機抓包
pan errors tools 系統安全 color rom 技術分享 20px span 18-06-26 記fiddler手機抓包 1、配置fiddler ① tools --》 fiddler options 勾選 Capture HTTPS CON
fiddler中抓包後時間戳轉日期
時間戳 圖片 sta amp image ima tool 時間 分享圖片 時間戳轉日期網址:https://tool.lu/timestamp/ fiddler中抓包後時間戳轉日期
Fiddler手機抓包出現的問題
1.按照正常配置流程,首先配置Fiddler HTTPS和Conections,電腦Wifi共享給手機端或下載模擬器連線Wifi,手機端安裝證書,配置Wifi為代理。上述步驟詳見百度流程。 2.正常配置後,有些手機app基本能正常抓包,如:網易雲音樂,有些卻手機網路變成不可用,無法再訪問app資
Fiddler(二) - 使用Fiddler做抓包分析
分享一下我的偶像大神的人工智慧教程!http://blog.csdn.net/jiangjunshow 也歡迎轉載我的文章,轉載請註明出處 https://blog.csdn.net/mm2zzyzzp Fiddler(二) - 使用Fiddler做抓包分析
Fiddler 手機抓包步驟
1.下載Fiddler安裝包,fiddler_4.6.20171.26113_setup .exe 進行安裝,安裝完成後設定服務埠。預設為8888. 2.保證電腦和手機在同一個區域網內,如果不是,可以自己通過路由器配置一個區域網,手機連線上該網路後,設定代理 3.設
【fiddler手機抓包不能上網問題解決】
進行抓包過程發現 ,上不了網路,提示 [Fiddler] The Fiddler AutoResponder is enabled, but this request did not match any of the listed rules. Because the
fiddler手機抓包配置方法
一、下載工具包 百度搜索”fiddler 下載“ ,安裝最新版本 下載的軟體安裝包為“fiddler_4.6.20171.26113_setup.exe”格式,雙擊安裝。安裝成功,在“開始”-“所有程式”,就會看見這樣的圖示,若是常用的話,也可以在桌面建一個快捷方式,如下圖: 二、fiddler手機抓包
fiddler對抓包內容編輯後再次傳送請求
最近在測試一個專案,遇到輸入框的時候,開發人員限制了不允許輸入特殊字元,那麼我們有沒有什麼辦法就讓它輸入特殊字元呢?我想到了fiddler,於是在網上找到了資料,整理如下: 1、在fiddler中選中要修改的請求,右擊選擇Replay,然後選擇Reissue
Gitbash如何支援互動式命令?如何讓gitbash的命令不亂碼?winpty是什麼鬼?幹嘛用的?
winpty 是一個 Windows 軟體包,提供了類似 Unix pty-master 一樣的介面,用於實現控制檯程式之間的通訊。該軟體包包括一個開發庫 (libwinpty) 和一個用於 ygwin 和 MSYS 的工具用於在 Cygwin/MSYS pty 下執行 Windows 控制檯程式。
fiddler 手機抓包(含https) 完整流程
一部分:下載並安裝fiddler 1.使用任一瀏覽器搜尋【fiddler下載安裝】,並下載fiddler 安裝包。 2.fiddler安裝包下載成功後,將下載的fiddler壓縮包解壓到自定義資料夾【fiddler】或者解壓到當前資料夾下,雙擊資料夾中的【fiddler.exe】檔案 3.雙擊檔
Fiddler 4 抓包手機配置代理後不能上網解決辦法
今天根據網上配置Fiddler後手機不能上網,後經過查詢,終於找到解決辦法 1.檢查Fiddler需要用到對應的.net framework 在Help->About 即可檢視需要的版本 (安裝之後重啟電腦) 可能遇到的問題:
javaWeb學習(2)——web.xml和pom.xml都是幹嘛用的
web.xml和pom.xml看起來差不多都是仨字母,檔案字尾都一樣 對於初學者來講,剛接觸這裡面的東西,感覺亂七八糟的傻傻弄不清楚 我也以一個初學者的角度,說說自己的理解 一、POM啥意思呢,百度了一下叫專案物件模型------->該檔案用於管理:原始碼、配置檔案、
安卓微信連線fiddler等抓包工具無法抓取https
問題描述: 在手機連線pc的fiddler後,安卓微信打不開https頁面,安卓的瀏覽器、qq等都可以正常訪問https,ios也都可以,就只有安卓微信放問https是空白頁面 解決思路: 一. 證書沒有正確安裝 連線抓包工具無法訪問https的,首先判斷是證書問題。在瀏覽器訪問&nb
fiddler手機抓包 iOS iPhone 設定方法
1. 設定fiddler,Tools-Options... 抓取https的話,勾選紅框中的內容 2. fiddler預設監聽埠8888 3. 檢視本機IP 4. 開啟手機 設定-無線區域網 點進去連線的電腦wifi右邊的“圓圈i”,設定代理IP 埠號