我正在尝试将一些 Postman 请求串在一起进行测试。
在第一个请求中,我将全局变量设置为测试脚本。
tests['Status code is 200'] = (responseCode.code === 200);
if (responseCode.code === 200) {
try {
let jwt = responseBody.replace(/"/g, '');
pm.globals.set("jwt", jwt);
console.log("Variable will be set to", jwt);
}
catch(e) {
console.log(e);
}
}
在第二个请求中,我运行一个预请求脚本为
let jwt = pm.globals.get("jwt");
然后我尝试将其传递到标题中
在运行器中运行测试时是否可以将值传递到标头中?
在 Runner 中运行测试时,第二个请求由于
jwt
无效而失败,并且 Postman 文档仅显示将变量传递到 URL 的示例。
它包含在邮递员身份验证中。
添加测试以捕获令牌
var jsonData = JSON.parse(responseBody);
postman.setEnvironmentVariable("jwt", jsonData.token);
授权>类型>承载令牌
注意:我使用的是6.3.0版本。
如果您认为您的环境和变量设置正确,也许您还没有保存您的环境?就我而言,它因此无法识别该变量。如果尚未保存,它将有一个橙色点指示器。