我正在尝试使用 Postman 作为测试工具来验证我们的客户在我们的主系统中都有一个邮寄地址。由于其结构,我无法深入研究 JSON。每个响应都是一个具有单个“节点”的数组结构,没有要寻址的“头属性”。
示例 JSON:
[
{
"ID": "cmd_org_628733899",
"organization": {
"name": "FULL POTENTIAL",
"accountStatusCode": "1",
"accountStatusDescription": "OPEN"
},
"location": [
{
"locality": "LITTLE ROCK",
"locationType": "MAILING"
},
{
"locality": "BIG ROCK",
"locationType": "LOCATION"
}
]
}
]
测试代码,因为它存在:
pm.test("Check for a Mailing Address", function () {
// Parse response body
var jsonData = pm.response.json();
// Find the array index for the MAILING Address
var mailingLocationIndex = jsonData.location.map(
function(filter) {
return location.locationType;
}
).indexOf('MAILING');
// Get the mailing location object by using the index calculated above
var mailingLocation = jsonData.location[mailingFilterIndex];
// Check that the mailing location exists
pm.expect(mailingLocation).to.exist;
});
错误消息:TypeError:无法读取未定义的属性“地图”
我知道我必须迭代到外部数组中的 node(0),然后钻入嵌套的位置数组以找到一个 locationType = Mailing 的条目。
我无法通过外部数组。我是 JavaScript 和 JSON 解析的新手——我是一名 COBOL 程序员。