對HTTP協(xié)議報文有了充分了解之后,上一節(jié)我們對get請求進行了詳盡的測試,由于get請求沒有請求體,相對來說比較簡單,接下來我們加上請求體,看看使用post接口如何完成各種不同類型請求體的請求操作。
需要注意的是,post請求也并不一定都有請求體,遇到?jīng)]有請求體的post接口,處理方式和get請求完全一致。
請求需要用到的四要素中:HTTP方法和url地址是顯而易見的;沒有特殊說明時,基本的請求頭不需要關(guān)注,Postman會自動添加;重點關(guān)注請求體以及與它配套的Content-Type頭域。
常用的接口測試請求體的編輯格式包括如下幾種,和Content-Type頭域分別對應(yīng):
-
- application/x-www-form-urlencoded:url編碼格式 即 鍵=值&鍵=值格式
- application/json: json格式 即 {"鍵":值,"鍵":值} 格式
- text/xml:xml格式 即 <鍵>值<鍵>格式
- multipart/form-data: 文本與文件混合格式表單,通常用于文件上傳
這里的Content-Type頭域和請求體的關(guān)系,相當于快遞運輸時的運輸方式,比如請求體是水,就用常溫運輸,如果是冰,就需要冷藏的方式運輸了。
接下來幾節(jié),我們分別來看各種請求體格式應(yīng)該如何使用Postman完成請求。
urlencoded格式請求體實現(xiàn)請求
請求示例:
本例使用的接口為電商項目登錄接口,接口信息如下
-
- 項目地址:首頁-開源商城 | B2C商城 | B2B2C商城 | 三級分銷 | 免費商城 | 多用戶商城 | tpshop|thinkphp shop|TPshop 免費開源系統(tǒng) | 微商城
- 接口url地址:http://www.testingedu.com.cn:8000/index.php?m=Home&c=User&a=do_login&t=0.46532356966410116
通過抓包獲取接口的基本信息,可以看到請求頭中Content-Type字段值為application/x-www-form-urlencoded,它的格式我們非常熟悉,和url中?后面的參數(shù)格式相同,為鍵=值&鍵=值的格式。
可以在fiddler或者其它抓包工具中查看請求參數(shù)的美化組織格式,上述請求體對應(yīng)于webform格式下的請求體內(nèi)容以表格形式顯示如下:
Postman完成請求:
針對application/x-www-form-urlencoded格式,可以用兩種方式在postman的Body菜單中填寫:
1、用x-www-form-urlencoded菜單分欄填寫
注意不要把請求url地址的參數(shù)也填寫進來了,那些參數(shù)在Params菜單中。
編輯完請求體之后可以查看Headers中的頭域信息,會發(fā)現(xiàn)除了基本頭域以外,加入了Content-Type和Content-Length兩個頭域,分別表示請求體的類型和長度。
由此可見,當選擇x-www-form-urlencoded時,postman會自動在頭域中添加請求體相關(guān)的頭域參數(shù)設(shè)置。
這里返回體格式直接以純文本形式當做HTML顯示,其中的中文內(nèi)容還是未經(jīng)處理的unicode編碼,可以通過切換返回體的格式下拉欄菜單為JSON,以美化后的格式顯示,并對中文等特殊符號進行轉(zhuǎn)碼。
2、用raw格式直接填寫原始url編碼格式
在Body菜單中選擇raw格式,然后將原始url編碼字符串直接粘貼進輸入欄中,發(fā)起請求會發(fā)現(xiàn)返回結(jié)果是請?zhí)顚戀~號或密碼,說明我們的請求體內(nèi)容中攜帶的用戶名密碼等信息并沒有被服務(wù)器接受。
切換到Headers中查看,會發(fā)現(xiàn)其中的Content-Type并不是applicaiton/x-www-form-urlencoded,而是text/plain純文本格式的請求,因而才會導(dǎo)致請求體格式不被服務(wù)器接受。
相當于服務(wù)器原本是希望收到冷凍起來的冰,而我們卻選擇了常溫運輸方式,服務(wù)器也就認為自己沒有收到需要的用戶名密碼。
因此我們要做的處理是在Headers中修改Content-Type的值,由于原本自動添加的Content-Type不能修改,因此取消勾選并新增一個Content-Type,值為application/x-www-form-urlencoded
?文章來源:http://www.zghlxwxcb.cn/news/detail-431799.html
重新發(fā)送之后,就可以得到正確的請求結(jié)果了。文章來源地址http://www.zghlxwxcb.cn/news/detail-431799.html
到了這里,關(guān)于不會接口測試?用Postman輕松入門(四)——Post請求url格式請求體的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!