postman 从响应中提取动态键的值

jjhzyzn0  于 2023-10-18  发布在  Postman
关注(0)|答案(2)|浏览(150)

我的回应如下:

{
    "value": {
        "element-6066-11e4-a52e-4f735466cecf": "b721a18e-ffab-49bc-acdf-5a30c84e160d"
    }
}

我想提取标记为“element-6066-xxxx-xxxx-xxxxxxx”的动态键的值(每次重新运行API调用时都会更改)。
任何指导都将不胜感激。
我尝试了以下方法:

var data = JSON.parse(responseBody);
pm.environment.set("elementId", Object.keys(data.value)[0]);

但是这设置了“键”而不是“值”(期望设置“b721 a18 e-ffab-49 bc-acdf-5a 30 c84 e160 d”)。

cl25kdpy

cl25kdpy1#

你需要使用Object.values()来实现:

let res = pm.response.json();
pm.environment.set("elementId", Object.values(res.value)[0]);
dohp0rv5

dohp0rv52#

Object.values()会帮助你。你可以参考这个MDN docs。下面是一个例子:

let x = {
    "value": {
        "element-6066-11e4-a52e-4f735466cecf": "b721a18e-ffab-49bc-acdf-5a30c84e160d"
    }
}

console.log(Object.values(x.value)[0])

相关问题