postman的請求認(rèn)證機(jī)制有哪些
1、postman的https雙向認(rèn)證請求配置
HTTPS雙向認(rèn)證關(guān)于加密證書的詳解轉(zhuǎn)自: https://www.jianshu.com/p/2b2d1f511959?utm_campaign=haruki
首先利用openssl 先將客戶端證書 .fpx 進(jìn)行公鑰私鑰提取
配置服務(wù)端證書:
Basic + 空格+ 用戶名:密碼(用戶名:密碼格式需要進(jìn)行base64編碼)
2、Postman接口測試之:Postman實(shí)現(xiàn)接口請求(1)
課程實(shí)例使用的url地址匯總:開源接口部分: https://api.apiopen.top/api.html
1、獲取時間get接口 http://poetry.apiopen.top/getTime
2、網(wǎng)易新聞post接口 https://api.apiopen.top/getWangYiNews
3、百度ip接口 https://sp1.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?query=12.12.12.12&co=&resource_id=5809&t=1636461955537&ie=utf8&oe=gbk&cb=op_aladdin_callback&format=json&tn=baidu&cb=jQuery110206769724197850711_1636461449011&_=1636461449013
電商項目部分: 電商網(wǎng)站: http://www.testingedu.com.cn:8000/
4、電商登錄接口:http://www.testingedu.com.cn:8000/index.php?m=Home&c=User&a=do_login&t=0.9806405470978172
5、文件上傳接口 :http://www.testingedu.com.cn:8000/index.php/home/Uploadify/imageUp/savepath/head_pic/pictitle/banner/dir/images.html
自動化平臺項目:平臺網(wǎng)站: http://39.108.55.18/mypro/#/login
6、平臺登錄接口:http://39.108.55.18/mypro/api/user/login
Token接口項目:Token項目網(wǎng)站: http://www.testingedu.com.cn:8081/inter/
7、Token項目 SOAP接口:http://www.testingedu.com.cn:8081/inter/SOAP?wsdl
1、 Postman 安裝之后, 可以進(jìn)行一下更新。
使用的時候最好可以注冊一個賬號。
先創(chuàng)建一個workspace,用于管理接下來使用過程中產(chǎn)生的內(nèi)容。
2、接口測試的基本流程: 本質(zhì)就是抄。
1、了解接口信息 : 由開發(fā)提供接口文檔, 或者通過抓包來獲取接口報文信息。
2、 設(shè)計測試用例
3、 執(zhí)行測試用例: 用postman等工具執(zhí)行。 請求發(fā)包。
4、驗(yàn)證返回結(jié)果。
3、 HTTP協(xié)議接口報文: 理解成寄快遞。
接口報文分為請求和返回,格式其實(shí)是相同的。
請求
請求四要素: http方法 、url地址、請求頭 、請求體。
請求行: http方法(郵寄方式) url(地址) http協(xié)議版本
請求頭: 鍵值對格式 ,鍵:值 用換行分割的方式。 (快遞單)
除了特殊指定的要填的請求頭以外,注意 post請求 需要關(guān)注content-Type請求頭,表示的是請求體的編輯格式。(快遞的運(yùn)輸方式 常溫/冷凍)
常見的content-Type類型:
application/x-www-form-urlencoded: url編碼格式: 鍵=值&鍵=值
application/json: json格式字符串: {"鍵":值,"鍵":值}
postman選 raw格式之后,下拉欄選擇json
注意:復(fù)制json格式的請求體的時候,如果從瀏覽器開發(fā)者工具中復(fù)制,記得確認(rèn)鍵必須帶雙引號。最好view source 之后再復(fù)制。
multipart/form-data: 用于進(jìn)行文本和文件的混合傳遞。 完成文件上傳。
選擇posmtna中的 form-data進(jìn)行參數(shù)填寫。
注意: Name空格中,可以選擇下拉 file或者text。
文件用file上傳,文本用text上傳。
text/xml: 用xml格式來進(jìn)行傳遞。 <鍵>值</鍵>
選擇 body中的 raw格式 ,下拉欄用xml進(jìn)行填寫:
注意:content-type postman會默認(rèn)使用 application/xml,需要自己確認(rèn),到底是text/xml還是application/xml,如果不對,進(jìn)行修改,最后是直接去掉原有的,加一個新的content-type頭。
請求體 : 請求頭之后空一行 ,之后的就是請求體。 (寄的東西)
返回
返回行:http協(xié)議版本 HTTP狀態(tài)碼(物流狀態(tài)) 狀態(tài)碼描述
返回頭: 鍵值對格式 ,鍵:值 用換行分割的方式。 (快遞單)
返回體 :返回頭之后空一行,就是返回體 (對方寄回的東西)
返回:重點(diǎn)驗(yàn)證返回體。
4、http協(xié)議抓包:
使用瀏覽器開發(fā)者工具抓包:
在網(wǎng)頁上右鍵檢查,或者按下F12,打開開發(fā)者工具,切換到network 界面。
注意:記得勾選 preserve log。
請求體中:request payload (json格式、xml格式和普通文本) 和form data (文件和x-www-form-urlencoded格式)
使用 fiddler /charles 等http抓包工具抓包:
在fiddler菜單右側(cè),用inspector 選項進(jìn)行查看,選raw(原始)格式能夠直觀看到報文格式。
http是一個簡單的請求-響應(yīng)協(xié)議,它通常運(yùn)行在TCP之上。它指定了客戶端可能發(fā)送給服務(wù)器什么樣的消息以及得到什么樣的響應(yīng)。
http協(xié)議是基于url地址的資源請求協(xié)議
5、用postman發(fā)送報文請求:
1、http 方法 和 url 進(jìn)行填寫。 注意 url中最后帶上的空格也會有影響,所以千萬注意。
2、請求頭一般先不做過多關(guān)注,先用默認(rèn)的,除非有明確的說明需要設(shè)置某個請求頭。
3、請求體在postman 請求欄的body中進(jìn)行設(shè)置。選擇相應(yīng)的content-type格式進(jìn)行編輯,可以自動設(shè)置,不用自己設(shè)置 請求頭中的 content-type。
6、unicode編碼: \u 4位16進(jìn)制數(shù),用于表示某個特殊的字符。
例如:\u7f8e\u56fd\u963f\u62c9\u65af\u52a0
7、get和post的核心區(qū)別:
get方法,通常不帶請求體。
而post方法可以攜帶請求體。
END
3、Postman中文文檔――請求(Request)
在構(gòu)建器( Builder )選項卡下,請求構(gòu)建器允許您快速創(chuàng)建任何類型的HTTP請求。HTTP請求包含四個部分:URL,方法,header頭部和body主體。Postman為您提供工具來處理這些部分。
URL是您發(fā)送一個請求需要設(shè)置的第一件事。URL輸入欄會存儲先前使用的URL,并在您開始輸入URL時自動展開下拉列表。
單擊 Params 按鈕打開用于輸入URL參數(shù)的 數(shù)據(jù)編輯器 。您可以單獨(dú)添加鍵值對,Postman將組合上述請求的字符串中的所有內(nèi)容。如果您的網(wǎng)址已經(jīng)具有參數(shù) ,您粘貼了其他來源的網(wǎng)址時,Postman會將網(wǎng)址請求的參數(shù)自動分割成鍵值對。
注意 :您在URL欄或數(shù)據(jù)編輯器中輸入的參數(shù)不會自動進(jìn)行URL編碼。右鍵單擊所選文本,然后選擇“EncodeURIComponent”進(jìn)行手動編碼參數(shù)值。
注意: 如果沒有指定協(xié)議, Postman將自動添加 http:// 到URL的開頭。
一些API使用路徑變量。你可以利用Postman進(jìn)行請求。以下是具有路徑變量的URL的示例:
要編輯路徑變量,請單擊參數(shù)( Params )以查看已輸入的 key 。根據(jù)需要更新 value 。例如, :entity 在這種具體情況下可以是“user”。Postman還會為您提供自動填寫URL的建議。
單擊頭部( Headers )選項卡將顯示header鍵值編輯器。您可以將任何字符串設(shè)置為頭名稱。下拉列表將在您輸入字段時提供常見HTTP頭的建議。“Content-Type”的值也可以在自動完成的下拉列表中使用。
有關(guān)限制header的注意事項 :如果您使用的是Postman Chrome應(yīng)用,則某些headers會受到Chrome和XMLHttpRequest規(guī)范的限制。但是,如果安裝 Interceptor擴(kuò)展 來發(fā)送限制的頭文件話就很簡單。
在本地應(yīng)用程序中管理Cookie可以通過使用Cookie管理器編輯與每個域名相關(guān)聯(lián)的Cookie。要打開該窗口,請單擊 Send 按鈕 下的 Cookies 鏈接 。進(jìn)一步了解如何 管理Cookie 。
您可以在header預(yù)設(shè)中將常用header保存在一起。在 Headers 選項卡下方,您可以通過預(yù)設(shè)( Presets )右側(cè)下拉列表選擇“管理預(yù)設(shè)(Manage Presets)”添加header到您的請求。
通過控件下拉列表更改請求方法是最直接的方法。請求主題編輯器區(qū)域?qū)⒏鶕?jù)請求方法的改變而改變。
在構(gòu)建請求時,您將與請求主體編輯器一起工作。Postman可以發(fā)送幾乎任何類型的HTTP請求。主體編輯器分為4個區(qū)域,根據(jù)body類型的不同而選擇合適的類型。
關(guān)于header的注意事項 :當(dāng)您通過HTTP協(xié)議發(fā)送請求時,您的服務(wù)器可能會希望傳遞一個Content-Type。Content-Type頭允許服務(wù)器正確解析正文。對于表單數(shù)據(jù)和urlencoded主體類型,Postman會自動附加正確的Content-Type頭,因此您不必額外去設(shè)置它。當(dāng)您選擇格式化類型時,將設(shè)置原始raw模式的header。如果您手動使用Content-Type頭,則該值優(yōu)先于Postman的設(shè)置。Postman沒有為二進(jìn)制的body類型設(shè)置任何header類型。
multipart/form-data 是Web表單用于傳輸數(shù)據(jù)的默認(rèn)編碼。這樣可以模擬在網(wǎng)站上填寫表單,并提交表單。表單數(shù)據(jù)編輯器可以為數(shù)據(jù)設(shè)置鍵值對(使用 數(shù)據(jù)編輯器 )。您也可以將文件附加到key。注意:由于HTML 5規(guī)范的限制,文件不會存儲在歷史記錄或集合中。下次發(fā)送請求時,您將需要再次選擇該文件。
不支持使用自己獨(dú)立的Content-Type上傳多個文件。
此編碼與URL參數(shù)中使用的編碼相同。您只需要輸入鍵值對,Postman會正確地對鍵和值進(jìn)行編碼。請注意,您無法通過此編碼模式上傳文件。form-data和urlencoded之間可能會有一些混淆,所以請務(wù)必先檢查一下你的API。
raw請求可以包含任何內(nèi)容。除了替換 環(huán)境變量, Postman不會在raw編輯器中輸入的字符串。無論您放在文本區(qū)域中是否發(fā)送請求。raw編輯器可讓您設(shè)置格式化類型以及您應(yīng)該使用raw 主體發(fā)送的正確header。您也可以手動設(shè)置Content-Type header,這將覆蓋Postman定義的設(shè)置。在編輯器類型中選擇XML / JSON可以為您的請求體提供語法突出顯示,并設(shè)置Content-Type header。
提示 :在編輯器中選擇文本并按 CMD / CTRL + B 可以自動對XML / JSON內(nèi)容進(jìn)行美化。
二進(jìn)制數(shù)據(jù)允許您發(fā)送無法在Postman中輸入的內(nèi)容,例如圖像,音頻或視頻文件。您也可以發(fā)送文本文件。如前面在表單數(shù)據(jù)部分所述,如果要通過歷史記錄或集合加載請求,則必須重新連接文件。
4、Postman第2篇―接口請求與響應(yīng)
在接口測試中,接口請求信息中,重點(diǎn)需要關(guān)注4大信息:接口URL地址、請求方法、 請求頭以及請求參數(shù)。接口的響應(yīng)包中,測試關(guān)注的重點(diǎn)在于響應(yīng)的正文主體,同時可能對響應(yīng)頭和狀態(tài)碼進(jìn)行校驗(yàn)。
根據(jù)抓包信息或接口文檔,填寫 HTTP方法、URL、請 求參數(shù)、以及請求地址之后,點(diǎn)擊send發(fā)包。
Postman請求發(fā)起之 后將得到響應(yīng)結(jié)果, 包括 響應(yīng)主體 、 響應(yīng)頭 、cookies、 狀態(tài)碼 、請求耗時、報文數(shù)據(jù)大小等信息。
接口測試,主要就是對響應(yīng)得到的信息進(jìn)行驗(yàn)證,是否與用例設(shè)計預(yù)期相符。
5、postman上面請求之session疑惑
最近在使用postman的過程中發(fā)現(xiàn),postman居然像瀏覽器一樣有session機(jī)制。瀏覽器在關(guān)閉重啟后session會重新創(chuàng)建,那postman在重啟后會不會重新創(chuàng)建呢! 于是奮力的重啟了幾十遍postman! 詭異的事情發(fā)生了,之前的請求的session還是繼續(xù)存在著(通過sessionId判斷還是之前的session)。帶著上面的疑惑,我進(jìn)行了一番思索: 服務(wù)器要辨別出postman之后請求的session是不是同一個,那還得和瀏覽器請求一樣攜帶一個jsessionId進(jìn)行區(qū)分。那postman的seesionId是存在什么地方的呢!瀏覽器是通過cookie的方式存儲,那postman呢。仔細(xì)看了下postman的界面,果然發(fā)現(xiàn)postman請求界面上面有一個Cookies字樣按鈕,點(diǎn)擊查看如下圖:
突然間恍然大悟,postman這貨,原來是把請求同一個ip地址或者域名 生成的JessionId 和域名或者ip一 一對應(yīng)進(jìn)行了存儲,也就是說只要服務(wù)端不重啟,postman不管重啟多少次,只要請求上次相同的ip地址或者域名下面的接口session都是同一個。

轉(zhuǎn)載請帶上網(wǎng)址:http://www.lol998.com/posjifive/293678.html