保存对具有多个值的环境的响应

Saving response to environment with multiple values

我正在尝试保存这些 ID,但它们没有保存到我的环境变量中,我看到控制台输出为:

undefined
undefined

Json 回应

{
    "savedIds": [
        95672,
        95673
    ]
}

测试

for(let i = 0; i< jsonData.savedIds.length; i++) {
pm.environment.set("savedID" + [i+1],jsonData)
console.log(pm.environment.get('savedIds' + [i+1]));
};

首先,您获取 JSON 数据的代码运行良好,如下所示:

let jsonData = {
    "savedIds": [
        95672,
        95673
    ]
};

for(let i = 0; i < jsonData.savedIds.length; i++) {
  console.log(i + ", " + jsonData.savedIds[i]);
};

问题来自与 Postman 一起使用的密钥。您正在使用 savedID 然后 savedIds。所以,你会做这样的事情:

for(let i = 0; i< jsonData.savedIds.length; i++) {
  pm.environment.set("savedID" + [i+1], jsonData.savedIds[i])
  console.log(pm.environment.get('savedID' + [i+1]));
};

作为做同样事情的另一种方法:

jsonData.savedIds.forEach((id, index) => pm.environment.set(`savedID_${index + 1}`, id));

或在 Postman 中使用 Lodash:

_.each(jsonData.savedIds, (id, index) => pm.environment.set(`savedID_${index + 1}`, id));