使用Postman做鑑權計算

2021-10-10 09:15:56 字數 1580 閱讀 4279

postman是進行開發測試的常用工具。

而在請求過程中,經常需要進行登入、加密鑑權。

通過postman自帶的pre-request script和tests功能,我們可以將過程**化,節約時間。

postman的pre-request script功能可以在請求前執行指令碼,進行鑑權的計算

通過環境變數和js指令碼功能,我們可以把計算好的sign引數加入請求中。

具體**如下(根據不同服務要求,引數組織形式、數量可能不一樣,但是原理相同。)

// secret and rand_time

let salt = "123456";

pm.environment.set("timestamp", (new date()).gettime().tostring());

let param = request.data; //post 引數

let queryparam = pm.request.url.query.members; //get中的引數

//將post和get合併,並且移除sign引數

for (let i in queryparam)

param[queryparam[i].key] = queryparam[i].value;

}//排序

param = objsort(param);

param["timestamp"] = pm.environment.get("timestamp");

str = "";

for (let i in param)

str = str.substr(0, str.length - 1);

var base64 = cryptojs.enc.base64.stringify(cryptojs.hmacsha1(str, salt));

//url safe encode

base64 = base64.replace("+", "-").replace("/", "_");

pm.environment.set("sign", base64);

//排序方法

當登入申請到token後,可以將token使用tests功能儲存到變數中。

後續使用變數傳遞。

**樣例如下:

if (responsecode.code == 200) 

pm.environment.set("accesstoken", jsonresult.result.accesstoken)

pm.environment.set("refreshtoken", jsonresult.result.refreshtoken)

}

postman 安裝,配置,鑑權

雙擊點選.exe檔案,進行安裝 成功以後會在桌面產生響應的快捷鍵 雙擊開啟,第一次開啟的介面 postman的工作頁面 主要分為兩塊,工具欄和請求欄 工具欄 history 之前所有的用例 collection 可以新建用例,一鍵執行 請求欄中有四個比較常用重要 請求request的四要素 1 ur...

給REST介面做鑑權認證 OAuth

本地儲存使用者名稱和密碼肯定是不合適的。參考了 如何設計好的restful api之安全性這裡寫鏈結內容 重新學習了oauth 發現原來oauth2.0還有四種模式可選 授權碼模式 authorization code 簡化模式 resource owner 密碼模式 password creden...

Tornado做鑑權服務效能實踐

使用python的第三方jwt做鑑權服務,生產token def create token self,userid,product,level payload token jwt.encode payload,secretkey,algorithm hs256 return token mongod...