問題描述
- 目標:使用 postman 要模擬一個登錄的過程
- 過程:登錄需要用戶名和密碼,爲了防止機器人登錄,需要一個驗證碼,即登錄前需要請求驗證碼
- 其他接口(幾十個)需要登錄成功返回的token作爲參數傳遞
解決思路
- 使用postman 先調用獲取驗證碼的接口,將驗證碼返回的數據作爲postman的環境變量
- 根據用戶名和密碼,再獲取環境變量中的驗證碼拿到token,將token設置到環境變量中
- 其他接口將從環境變量中獲取token的值,設置到header中
postman 配置說明
- 獲取驗證碼請求
在Tests 的選項卡中輸入
var respObj = JSON.parse(responseBody);
// 獲取到驗證碼的UUID,保存到環境變量中
postman.setEnvironmentVariable("loginUUID", respObj.uuid);
// 獲取到驗證碼值,保存到環境變量中
postman.setEnvironmentVariable("loginVerifyCode", respObj.verifyCode);
- 登記請求
傳遞JSON的參數(從環境變量獲取)
{
"username": "admin",
"password": "admin123",
"code": "{{loginVerifyCode}}",
"uuid": "{{loginUUID}}"
}
- test選項卡輸入如下內容
將token設置環境變量
var respObj = JSON.parse(responseBody);
// 獲取到驗證碼的UUID,保存到環境變量中
postman.setEnvironmentVariable("token", respObj.token);
- 獲取用戶列表(將token設置到header中)