从 json 获取响应中过滤值

Filtering values from a json get response

我是 Postman 的新手,在过滤回复时遇到问题。我尝试了各种方法,但要么我走错了路,要么我做错了。

[
     {
         "id": "62f9-4fe5-82c4-4ecf",
         "description": "BLUE",
         "original_name": "AZURE_BLUE"
     },
     {
         "id": "98cd-95ed-45e9-a855",
         "description": "GREEN",
         "original_name": "LEAF_GREEN"
     }
   ]

我想做的是获取 Azure_Blue 的 id 值并将其传递到全局变量中,以便稍后在不同的 API 调用中使用它,但我被卡住了。

我试过了

const obj = JSON.parse(responseBody)
if(obj.original_name ==='AZURE_BLUE'){
    var subj=obj.id;
    postman.setGlobalVariable("id", subj);
}

pm.test("Get id", function () {
if(pm.response.code === 200){
    var obj = JSON.parse(responseBody);
    _.each(pm.response.json().data,(item) =>{
        if(item.original_name === 'AZURE_BLUE'){
            var subj=obj.id;
            postman.setGlobalVariable("id", subj);
        }
    })
}
});

非常感谢任何帮助

这行得通

const res = JSON.parse(responseBody)
const obj = res.find(({original_name}) => original_name === 'AZURE_BLUE');
pm.globals.set('id', obj.id);