postman使用變量:web
以前咱們請求裏面的主機地址都是localhost,表示本機。而在實際測試過程當中,服務器地址每每並不是是在本機上的,這時候就須要用到變量。算法
postman支持多個測試環境,一個環境裏能夠配置多個變量。數據庫
postman的變量主要分兩種類型:api
① 環境裏面的變量瀏覽器
- 點擊界面右上角的齒輪圖標,選擇Manage Environments 服務器
- 在彈出對話框中,點擊Add按鈕,填寫環境名ENVIRONMENT NAME 、VARIABLE、CURRENT VALUE 如 :server1 serverip http://localhostcookie
- 這樣一套環境就建立好了。建立好厚,就須要使用 能夠將全部請求的url中的主機名localhost替換爲爲變量名{{server1}} 如 https://{{server1}}/api/pagenum網絡
- 注意:雙花括號將變量名括起來,雙花括號就表示裏面是一個變量。session
- 當進行測試時,若使用的是本機的API服務,那就選擇名爲server1配置的環境;若使用不是本地的,就選擇server2的環境,postman就會使用不一樣環境裏面的變量對應的值。工具
② 全局變量
- 有時候,有些變量,咱們並不須要配置到不少套環境裏,由於基本上這就是一個固定值,要修改的話,全部的環境裏面都要修改。
- 咱們沒有必要建立變量到環境中,能夠建立一個全局變量,全局變量與咱們選擇的環境無關。
- 點擊界面右上角的齒輪圖標,選擇Manage Environments
- 在彈出對話框中,點擊Globals,加入全局變量名和變量值 如:course_add {'name':'初中數學', 'desc':111, 'display_idx':1}
- 而後咱們能夠在API請求的body中將參數的value值修改成用變量替代便可。如 {{course_add}}
HTTP抓包:
在進行接口測試時,咱們不免要用到fiddler工具來抓包:
http抓包,就會使用到fiddler。目前有兩種抓包類型:
① 抓瀏覽器的包 咱們須要指定瀏覽器的代理。以Chrome瀏覽器爲例,進入設置 === 高級選項 ===打開代理設置 ===勾選使用代理服務器設置地址和端口
② 抓手機上的包 一樣須要在手機上設置代理。填入fiddler所在機器的IP地址和代理服務器端口(默認8888)。注意:電腦wifi和手機所鏈接的wifi應處於同一個網絡環境。
這樣配置好,就能夠抓http包了。
另外若是想抓取https包,相應的須要下載fiddler證書將其導入瀏覽器中或手機上安裝fiddler證書,纔可抓取哦!
cookie和session:
作web api測試時,可能會接觸到cookie和session。
cookie是咱們在訪問一個網站時,一般由網站服務器返回的一種標記爲cookie類型數據。要求咱們存儲在瀏覽器所在電腦上。
之後每次訪問本網站,瀏覽器都會在http請求中將該數據發送過來。
session也叫會話,某用戶登陸後,服務端就會認爲建立了一個會話session。另外一個用戶登陸就會建立另外一個session。
爲了標誌不一樣的會話,服務端後面生成一個叫sessionid的東西,標誌此次登陸的全部後續http消息交互。
sessionid一般都保存在數據庫中,而且咳喲存儲該sessionid的一系列信息,如 用戶名、權限等。
session一般用在web應用中,就是瀏覽器裏面的網頁應用。做爲一種驗證用戶權限的機制:能根據sessionid,從而知道該用戶是否有相應的權限訪問相應的資源。
sessionid是如何返回給客戶端的呢? --------
經過http響應裏面的Set-Cookie頭部信息,要求瀏覽器保存到cookie中。
隨後,客戶端每次訪問同一個網站,都會將該cookie裏面的內容放到http頭部中,固然sessionid也在裏面 。即Set-Cookie中存儲了sessionid
因此服務端根據sessionid,到表中可以查到相應的記錄,就知道了對應的是哪一個用戶登陸。
總結:cookie主要用來存儲用戶的一些信息,存儲在瀏覽器中
session機制利用了cookie的功能 sessionid存儲在數據庫中;session弊端就是:服務器有必定壓力,性能上會有損耗。
token:是數據信息和驗證信息的一串字節數據。而token是大家公司的業務服務器生成的。
- hash算法產生token
- 數據信息改變,驗證信息也會改變,HMAC算法
- 密鑰 + data = HMAC
生成的token包含了別人沒法僞造的驗證數據,能夠用來驗證這個token是不是我這個業務服務器生成的。
token驗證的邏輯以下:
1 - 客戶端發送請求給服務器,服務器接收並驗證後,產生一個token
2- token裏面包含了一些關於這用戶的數據信息以及驗證token有效性的數據,服務器將token返回給客戶端
3 - 客戶端獲得token後,之後每次業務請求都要帶上token
4 - 一般放在http請求頭Authenrization中,服務端接到請求,就會驗證token是不是本身簽發的。驗證方法一樣是hmac(密鑰 + 數據)= 驗證信息,計算出來驗證信息和token裏面的驗證信息是否一致。
注意:公鑰能夠用來加密,私鑰能夠用來解密;私鑰能夠用來簽名,公鑰能夠用來驗證簽名。
好處:一旦登錄後,後續只要把請求帶過來,驗證經過。
token的優勢:不須要經過數據庫驗證,極大的提升了速度
token使用場景:① 防止表單重複提交 ② 跨站點請求僞造