fiddler是乙個簡單的http協議除錯**工具,它介面友好,易於操作,是模擬http請求的利器之一。
在介面測試中,介面通常是get請求或者post請求。get請求的測試一般較為簡單,只需設定好相關的請求頭,url寫正確即可。但是在測試post請求時,請求資料格式的設定往往就稍顯複雜。
尤其是在開發人員的介面文件描述不清楚的情況下,會影響到測試效率。
總結了下post請求常見的四種資料格式和對應的fiddler模擬請求的構造方法。
一、post請求主體詳解:
對於get請求來說沒有請求主體entity-body。對於post請求而言,不會對傳送請求的資料格式進行限制,理論上你可以發任意資料,但是伺服器能不能處理就是另一回事了。伺服器收到資料後,如何解析資料呢?
它會以請求頭中的content-type設定的內容來進行資料解析。確定好content-type的格式之後,請求主體的資料格式也就確定下來了。
接下來就詳細地介紹每一種資料格式對應的fiddler請求模擬的實現情況。
二、四種post請求資料格式:
這是post請求最常見也是預設的資料提交格式。它要求資料名稱(name)和資料值(value)之間以等號相連,與另一組name/value值之間用&相連。例如:parameter1=12345&meter2=23456。將請求的內容進行格式化了,其實這個方法同時簡化的客戶端傳送,也簡化了伺服器端獲取,伺服器通過getparameters(string name)即可獲取到傳送來的資訊。
用fiddler模擬請求的話,請求頭和請求主體的內容可以這樣構造:
模擬請求之後,從返回結果可以檢視到我們的請求資料:
用fiddler模擬請求的話,請求頭和請求主體的內容可以這樣構造:
模擬請求之後,從返回結果可以看到我們的請求資料:
(三)text/xml資料格式
用fiddler模擬請求的話,請求頭和請求主體的內容可以這樣構造:
模擬請求之後,從返回結果可以看到我們的請求資料:
(四)multipart/form-data資料格式
用fiddler模擬請求的話,請求頭和請求主體的內容可以這樣構造:
第一步,先設定好請求頭格式,然後點選upload file...
第二步,上傳你的檔案,這裡我上傳乙個png的
這是fiddler根據我們上傳的檔案自動調整生成的請求,在請求頭中看到,我們需要選擇一段資料作為「分割邊界」(boundary屬性),這個「邊界資料」不能在內容其他地方出現,一般來說使用一段從概率上說「幾乎不可能」的資料即可。
每次post瀏覽器都會生成乙個隨機的30-40位長度的隨機字串,瀏覽器一般不會遍歷這次post的所有資料找到乙個不可能出現在資料中的字串,一般都是隨機生成。選擇了這個邊界之後,瀏覽器便把它放在content-type 裡面傳遞給伺服器,伺服器根據此邊界解析資料。
下面的資料便根據boundary劃分段,每一段便是一項資料。(每個field被分成小部分,而且包含乙個value是"form-data"的"content-disposition"的頭部;乙個"name"屬性對應field的id等等,檔案的話包括乙個filename)
模擬請求之後,從返回結果可以看到我們的請求資料:
使用 Fiddler工具模擬post四種請求資料
對於get請求來說沒有請求主體entity body。對於post請求而言,不會對傳送請求的資料格式進行限制,理論上你可以發任意資料,但是伺服器能不能處理就是另一回事了。伺服器收到資料後,如何解析資料呢?它會以請求頭中的content type設定的內容來進行資料解析。確定好content type...
postman模擬post請求的四種請求體
postman的幾種引數格式 post型別的body中可以存放任意的內容格式,瀏覽器可以根據請求頭中指定的content type型別對請求體進行解析。下面介紹postman如何對四種典型的請求體進行模擬。1.form data即multipart form data,它將表單的資料組織成key v...
Fiddler模擬傳送post請求
fiddler在進行介面測試時,會模擬post請求,傳送不同的請求引數,返回不同的結果,今天我們就來分享一下,怎麼用fiddler工具模擬post請求 開啟fiddler工具,在右側點選 composer 的選項 進入到了composer 的選項之後,在parsed中進行根據http傳送的請求進行選...