postman测试接口时,每次都需要获取token以后,复制到接口里,特别复杂。
这里通过把获取token接口的返回数据添加到环境变量,然后将环境变量名设置在其他接口的token中,获取一次token,所有接口的token值都会跟着改变
一、输入代码
Token接口的test输入代码,提取access_token
var jsonData = JSON.parse(responseBody);//将内容转换为json字符串 if (jsonData.access_token){ tests["body has access_token"] = true; postman.setEnvironmentVariable("token",jsonData.access_token); } else { tests["body has access_token"] = false; }
二、配置environment
点击Postman右上角 的manage environment符号
Postman有environment的概念,在一个环境下,设置的环境变量可通用,并且可以设置多个environment,配置不同的环境变量
三、点击add,新建一个环境
四、设置参数名,
current value中的内容是第一步提取的参数名,点击Add或者update保存
五、切换环境
点击这里,然后选择刚刚新建的那个环境名称,切换成设置的环境
六、配置接口的token
在输入token的地方输入第四步的参数名{{token}}
七、运行token接口,然后回到刚刚的接口
鼠标放到token这里,能看到token有个值了。说明成功赋值了
八、点击右上角的小眼睛符号(environment quick look)
能查看当前环境的全局变量和环境变量的当前value
附:json表达式
可能不懂里面的那个jsonData.access_token,下面用一个例子来介绍:
假如responseBody为下面一串字符串:
{ "data": { "employees": [ { "firstName": "Bill", "lastName": "Gates" }, { "firstName": "George", "lastName": "Bush" }, { "firstName": "Thomas", "lastName": "Carter" } ] } }
其中employees是一个数组,需要用[]
来遍历位置。
如果我要获取第一个员工的`firstName,postman中就这样写:
var jsonData = JSON.parse(responseBody); postman.setEnvironmentVariable("firstname0",jsonData.data.employees[0].firstName);
来源:https://www.cnblogs.com/mingyue5826/p/11001891.html