在 Postman 中解析 JSON 响应数组中的值

Parse values in a JSON response array in Postman

我试图从 JSON 正文响应中解析“id”的值以包含在 Postman 的环境变量中,但没有成功。这是 Body 响应的示例。

"payload": {
    "transaction": {
        "amount": "1.00",
        "id": "114255633",
        "type": "AUTH",
        "result": "APPROVED",
        "card": "XXXXXXXXXXXX1111",
        "authorization-code": "TAS977",
    }
}

这是我在 postman 中的脚本

var jsonData = JSON.parse(responseBody);
var id = jsonData.payload[0].transaction.id;
postman.setEnvironmentVariable("id", id);

如有任何帮助,我们将不胜感激。我认为我的错误在于我希望获得的值嵌套在数组中。

如果我没记错的话..这应该行得通

var jsonData = JSON.parse(responseBody);
postman.setEnvironmentVariable("id", jsonData["payload"]["transaction"]["id"]);

postman 提供了 inbuild 方法来检索 json 您不必解析的对象:

也使用新的 pm api 代替 postman

pm.environment.set("id", pm.response.json().payload.transaction.id);