Postman全局变量设置和运用
2019-03-09 本文已影响3人
倔强的潇洒小姐
背景:很多接口再调用时都需要先登录操作
image.png解决办法:
1、调用接口前先调用登录接口
不是特别方便,比如像小程序登录时token(或cookie)是有时间限制的,另外,Postman重新打开时需要重新调用登录接口
2、将token(或cookie)设置为全局变量,应用到各接口
一、调用登录接口,构建全局变量
1、先在Chrome的Network中找到登录的返回参数
2、在Postman里填写好接口请求信息后,在【Tests】中写入代码获取cookie值
3、运行之后,postman会将cookie设置为全局变量
tests["Body contains Cookie"] = responseBody.has("Cookie");
if(tests["Body contains Cookie"])
{
// 将返回信息解析成对象
var responseData = JSON.parse(responseBody);
tests["Cookie"]=responseData.response.Cookie;
// 设置全局变量,把接口返回的token赋值给自定义的Cookiezyp参数
pm.globals.set("Cookiezyp",tests["Cookie"]);
//在控制台打印Cookie的值
console.log(responseData.response.Cookie);
//方便快速查看Cookie值
tests[responseData.response.Cookie] = true;
}
image.png
二、快速运用到需要cookie的接口
在请求的Headers页面,点击Presets→Manage Presets→Add,设置key-value:
image.png image.png全局变量的设置和环境变量是一样的,也是用2个大括号括起来,中间是变量名称
例如{{Cookiezyp}}
注意点
因调用接口在header中有设置cookie值,所以设置全局变量后需要将其删除,不然会提示登录