老工具 fiddler-使用拾遺及一些技巧
記錄這個 topic 其實還是猶豫了一下,畢竟 fiddler(不是 anywhere)屬於測試人超 10 年以上的老朋友了,很多人都不用了。
但 Classsic 畢竟經典,很多功能還是很好用的。
FiddlerScript
【1】修改請求 - 替換域名
找到 OnBeforeRequest(oSession: Session) 方法
if(oSession.oRequest.host=="aaa.xxx.com"){
//FiddlerObject.log(oSession.url)
oSession.oRequest["host"]="bbb.xxx.com"
oSession.url=oSession.url.Replace("aaa.xxx.com","bbb.xxx.com")
}
【2】CORS 處理
找到 OnBeforeResponse(oSession: Session) 方法
if(oSession.HTTPMethodIs("OPTIONS")){
oSession.oResponse["Access-Control-Allow-Methods"]="GET,POST,PATCH,OPTIONS";
oSession.oResponse["Access-Control-Allow-Headers"]="Content-Type, Accept, Authorization";
oSession.responseCode = 204;
return
}
var referOrigin:String[]=oSession.oRequest.headers["Referer"].Split("/");
if(referOrigin.Length>3){
FiddlerObject.log(referOrigin[0]+"//"+referOrigin[2])
oSession.oResponse["Access-Control-Allow-Origin"]=referOrigin[0]+"//"+referOrigin[2];
}else{
oSession.oResponse["Access-Control-Allow-Origin"]="*";
}
oSession.oResponse["Access-Control-Allow-Credentials"]="true";
以上本身沒啥,其他的操作看大家舉一反三了,主要希望大家別忘記這個老朋友 fiddlerClassic,雖然它不支援 H2。
但它還是很靈活的
filter
fiddler 還有一個不起眼的欄目 filter,其實這裡提供的功能還是蠻多的。
主要提供了一些過濾方法及預設的常用功能。
主要功能如下:
fiddler 的併發測試
這是 fiddler 的一個技巧,老使用者估計大部分知道,這個是其實 bpu(請求斷點)+Composer(請求構造器) 的配合使用
很多新使用者會寫指令碼啊或者使用 jmeter、burpsuite 啊搞,但 fiddler 這裡可以進行簡單的併發驗證,測試資源競爭一類的。
步驟 1:
使用 bpu 命令攔截你需要併發測試請求(按回車)
步驟 2:
將你需要攔截的請求拖拽到 Composer 中
然後不斷的重複的點選 Composer 中的 excute 命令
這樣,會出現很多這個被攔截的該請求
步驟 3:
點選 fiddler 左側的 Go(綠色三角),這樣攔截的請求將會併發提交,從而驗證一下併發的資源競爭一類
這個是比較有用的
相關文章
- 容器化 Confluence 使用拾遺
- Confluence 容器化使用拾遺
- PHP 使用 Kafka 安裝拾遺PHPKafka
- Zepto核心模組之工具方法拾遺
- Java Web 拾遺JavaWeb
- [MASM拾遺]OffsetASM
- 前端技能拾遺前端
- c++語法拾遺,一些細節與特性C++
- React拾遺:Render Props及其使用場景React
- OrchardCore Headless建站拾遺
- 物件導向拾遺物件
- Linux的一些工具使用技巧整理Linux
- golang拾遺:嵌入型別Golang型別
- docker拾遺-之再入坑Docker
- golang拾遺:指標和介面Golang指標
- Vue.js基礎拾遺Vue.js
- AS拾遺--向PM學習二
- Python中物件導向程式設計的一些高階方法拾遺Python物件程式設計
- C#拾遺補闕【01】:字串C#字串
- 課時39:類與物件:拾遺物件
- 老舊系統重構技巧,輕鬆搞定遺留程式碼
- (零) React Native 專案開發拾遺React Native
- 前端拾遺--javascript-ES6基礎前端JavaScript
- [Go]Go 語言基礎拾遺(一)Go
- MIT 6.824拾遺(一)聊聊basic-paxosMIT
- 【105天】前端碎片知識拾遺00003前端
- 【106天】前端碎片知識拾遺00004前端
- JAVA 拾遺 — CPU Cache 與快取行Java快取
- JSON實戰拾遺之數字精度JSON
- mysql 拾遺提高(函式、事務、索引)MySql函式索引
- 一些遺產(
- 基礎拾遺---委託,匿名函式,lambda函式
- [C#.NET拾遺補漏]01:字串操作C#字串
- 2萬字 | 前端基礎拾遺90問前端
- iOS拾遺—— Assets Catalogs 與 I/O 優化iOS優化
- JAVA拾遺 — JMH與8個測試陷阱Java
- Git拾遺:一機多SSH-Key管理Git
- [C#.NET 拾遺補漏]12:死鎖和活鎖的發生及避免C#