問題描述:
有一個(gè)登陸接口獲取token,其他接口再次訪問都要帶上token
解決方案:
1、在登陸接口訪問后設(shè)置Postman的環(huán)境變量(Environment),例如設(shè)置環(huán)境變量名:token,值為登陸接口訪問成功后,在responseBody中的token值,如何設(shè)置請看下面具體描述。
2、訪問其他接口時(shí)token值直接讀取變量即可。Postman里面獲取變量的語法為:{{變量名}}
具體步驟:
1、登陸接口介紹
如圖所示,login接口返回值JSON格式大體為:
{ "status": 0, "message": "成功", "data": { "username": "cams_admin_dev", "token": "eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE1MTYzNDIxMjAsInN1YiI6ImNhbXNfYWRtaW5fZGV2IiwiY3JlYXRlZCI6MTUxNjI1NTcyMDU0NywiZnVsbCI6ImNhbXNfYWRtaW5fZGV2IiwidWF1dGgiOiIvKio7QUxMIiwiYXV0aCI6InNldHRpbmdzLGNhbXNfYWRtaW4saW5kdXN0cnksYm9uZCxjYW1zSG9tZSxjb21wYW55LGFyZWEsZGV0YWlscyxjYW1zT3BlcmF0aW9uIn0.pI09X8KNoIK0fb6xC1xbrSZyg-EnUnlZ_9shmOQCRDtdIIEA5iyq3HmzgSx0ReaChEAZxkrrSRTtSXE8ZlbCTw" }}
返回值中有token值, 這個(gè)值怎么在訪問login接口后自動(dòng)設(shè)置為Postman環(huán)境變量呢?
2、在訪問login接口后自動(dòng)設(shè)置為Postman環(huán)境變量
在Postman軟件的Tests中寫以下代碼,設(shè)置環(huán)境變量
pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); // 把responseBody轉(zhuǎn)為json字符串 var data = JSON.parse(responseBody); // 設(shè)置環(huán)境變量token,供后面的接口引用 pm.environment.set("token", data.data.token);
如下圖所示:
點(diǎn)擊Send按鈕發(fā)送請求后,就可以動(dòng)態(tài)設(shè)置環(huán)境變量名為token,值為token值的變量。
設(shè)置成功后,點(diǎn)擊那個(gè)眼睛圖標(biāo),查看變量如圖所示:
3、訪問其他接口,環(huán)境變量token
如圖紅色標(biāo)注的所示
1、另一個(gè)接口
2、TYPE中選擇token的類型,我這里用到的是 Bearer Token
3、右邊紅色標(biāo)注的部分設(shè)置token值,格式為:{{token}},獲取前面login接口訪問時(shí)動(dòng)態(tài)設(shè)置的token,那么這個(gè)接口就可以用了
點(diǎn)擊Send會(huì)訪問成功。
以上這篇淺談Postman解決token傳參的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
網(wǎng)友關(guān)注