Fiddler 保存會話 (請求)

Fiddler下載地址

為什么要保存請求?

做這件事最重要的目的之一就是,最近我需要實現一個簡單的驗證服務器接口正確性的這么一個測試工具(腳本),順便把這(保存會話)記錄下來分享給大家。

有時間我會把我初步的想法整理好分享出來,大家一起來探討它的可行性,它不一定適用你們的業務,但是非常適合我項目的業務。雖然它也可能難產,但是我想盡力去做、去完成,也算鞏固一下自己的知識,應用到項目中去。

保存單個請求

選中某個請求,右鍵就能看到菜單中的Save

單個請求
單個請求
  • Selected Sessions
    • in ArchiveZIP 保存為saz文件,其實就是一個zip格式文件
    • as Text 以txt文件形式保存整個會話包括Headers/Request/Response
    • as Text (Headers only) 僅保存頭部
  • Request 保存請求信息
  • Response 保存響應體,即服務器返回的數據
  • and Open as Local File 保存Response信息,并打開文件

打開保存的請求文件

  • POST類型
POST
POST
  • GET類型
GET
GET

亂碼的解決方法

相信細心的你也注意到了,前面POST類型的請求,Response body是亂碼,這并不是我們希望看到的。那樣怎么做呢?下面貼張圖,你就秒懂了。

Decode
Decode

沒錯,就是Response body Fiddler默認采用了GZIP壓縮,只要我們勾選None,再導出就不是亂碼了

Not decode
Not decode

保存所有請求

菜單File >> Save >> All Sessions,文件將以saz的形式保存下來(實際就是一個ZIP文件,也可以加密保存)

SAZ是一種以.SAZ為后綴的文件格式。SAZ是Session Archive Zip的縮寫。 SAZ文件用于保存HTTP請求的信息。 在Fiddler軟件使用SAZ格式用來保存和讀取HTTP請求信息。

_index.htm : 一個可選文件,便于用戶直接閱讀。這個文件在SAZ文件被加載時不會被處理,僅僅用于手工檢查。

raw文件夾:包含所有的記錄了網絡Sesison信息的文件。

在raw文件夾內,對于每一個網絡Sesison,會有三個文件:

sessid#_c.txt:包含客戶端請求

sessid#_s.txt : 包含服務器端請求

sessid#_m.txt:包含一些元數據,比如:Session標志位,socket重用信息,等等。

Save All Sessions
Save All Sessions

自動保存請求的猜想

  • 過濾掉無關的請求,只關注自己想要的請求
  • 利用Fiddler的Customize Rules實現過濾(也可利用Filters功能實現過濾 >> 簡便、快捷),自動保存
  • js 實現過濾時,如果已經保存過的請求,可以考慮不再保存(可選)

自動保存已實現

2016.07.21 14:20更新

經過一上午的踩坑,終于把自動保存功能實現了,下面分享給大家。

先來看一張自動保存的請求片段

Session
Session

重點來了,下面是實現的js代碼

操作步驟

  • Fiddler菜單 >> Rules >> Customize Rules
  • 如果提示沒有下載Fiddler ScriptEditor則按提示下載后進入下一步操作
  • 安裝好Fiddler ScriptEditor后,就能打開Customize Rules.js文件
  • 編輯Customize Rules.js文件,并保存
  • 重啟fiddler

保存Request

把下面代碼貼在OnBeforeRequest()方法末尾

//過濾無關請求,只關注特定請求
if (oSession.fullUrl.Contains("szhome.com"))
{
    var fso;
    var file;
    fso = new ActiveXObject("Scripting.FileSystemObject");
    //文件保存路徑,可自定義
    file = fso.OpenTextFile("D:\\Fiddler Sessions\\Sessions.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();
}

保存Response

把下面代碼貼在OnBeforeResponse()方法末尾

//過濾無關請求,只關注特定請求
if (oSession.fullUrl.Contains("szhome.com"))
{
    oSession.utilDecodeResponse();//消除保存的請求可能存在亂碼的情況
    var fso;
    var file;
    fso = new ActiveXObject("Scripting.FileSystemObject");
    //文件保存路徑,可自定義
    file = fso.OpenTextFile("D:\\Fiddler Sessions\\Sessions.txt",8 ,true, true);
    file.writeLine("Response code: " + oSession.responseCode);
    file.writeLine("Response body: " + oSession.GetResponseBodyAsString());
    file.writeLine("\n");
    file.close();
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,791評論 6 545
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,795評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,943評論 0 384
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 64,057評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,773評論 6 414
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,106評論 1 330
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,082評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,282評論 0 291
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,793評論 1 338
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,507評論 3 361
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,741評論 1 375
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,220評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,929評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,325評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,661評論 1 296
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,482評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,702評論 2 380

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,836評論 18 139
  • fiddler作為一個程序猿+測試媛必備的工具,其他除了最基本的使用方法之外,還有很多強大到不行小技巧 下面將遇到...
    宇文臭臭閱讀 2,153評論 0 5
  • fiddler作為一個程序猿+測試媛必備的工具,其他除了最基本的使用方法之外,還有很多強大到不行小技巧 下面將遇到...
    劉瞧瞧閱讀 11,530評論 4 15
  • Fiddler_官方網站Fiddler_官方文檔Fiddler_官方視頻Fiddler_官方插件1、Filddle...
    52Alice閱讀 7,774評論 0 10
  • 簡介 Fiddler(中文名稱:小提琴)是一個HTTP的調試代理,以代理服務器的方式,監聽系統的Http網絡數據流...
    daoyidao閱讀 143,987評論 15 169