从Postman中的对象数组中提取值

时间:2017-02-15 18:25:51

标签: json environment-variables postman

我想从Postman中的对象中提取数组中的Id值,然后将其设置为环境变量。如果JSON响应是一个对象,则以下脚本可以工作,但不能使用对象数组(我的数组只有一个对象)。

var data = JSON.parse(responseBody);
postman.setEnvironmentVariable("userid", data.Id);

JSON回复:

[
  {
    "Id": 1287,
    "LastName": "Trump",
    "FirstName": "Donald",
    "MiddleName": "Von",
    "City": "New York City",
    "Phone": "66 77 88",
    "State": "New York",
    "Fax": "111-222-333",
    "ReferenceId": "12345",
    "Active": false,
    "CurrentWorkingSchemeId": null
  }
]

2 个答案:

答案 0 :(得分:9)

如果它是一个对象数组,那么在抓取对象的键之前,只需使用index [0]选择第一个对象:

var data = JSON.parse(responseBody);   
postman.setEnvironmentVariable("userid", data[0].Id);

答案 1 :(得分:1)

这就像魅力! 基本上,我在这里所做的是解析响应并从数据数组中获取id并将其保存在邮递员环境变量中。

var jsonData = JSON.parse(responseBody);
    for (var i = 0; i < jsonData.data.length; i++) `
    {
    var counter = jsonData.data[i];
    postman.setEnvironmentVariable("schID", counter.id);
    }