POSTMAN:解析JSON响应,我可以在多长时间内进入响应?

时间:2017-06-06 10:06:58

标签: javascript json postman

我目前正在尝试精确解析JSON响应(使用POSTMAN)。

JSON响应具有以下结构(我使用...来跳过不相关的信息):

*

{
  "href": ...,
  "offset": ...,
  "limit": ...,
  "first": ...,
  "last": ...,
  "entries": [
    {
      "href": ...,
      "id": ...,
      "name": "MY_FIRST_ITEM_NAME",
      "tags": [
        ...,
        ...
      ],
      "objectClass": [
        ...
      ],
      "attributes": {
        ...,
        ...,
        ...,
        "device.type": "MY_ITEM_TYPE,
        ...
      },
      ...
    },
    {
      "href": ...,
      "id": ...,
      "name": "MY_SECOND_ITEM_NAME",
      "tags": [
        ...,
        ...
      ],
      "objectClass": [
        ...
      ],
      "attributes": {
        ...,
        ...,
        ...,
        "device.type": "MY_ITEM_TYPE,
        ...
      },
      ...
    },
    ...
    ]
}*

我想测试几个已知值: tests [“test first item”] = responseBody.has(“MY_FIRST_ITEM_NAME”) 这有效,但我也想检查相关的设备类型 如果我使用responseBody.has(“MY_ITEM_TYPE”)我无法弄清楚它与哪个项目相关,所以我尝试进行更精确的检查: *

tests["test entries 0"] = body.entries[0].name === "MY_FIRST_ITEM_NAME"*; 
this works but when it comes to test the device type:
tests["test entries 0"] = body.entries[0].attributes.device.type

最终出现错误“TypeError:无法读取属性'类型'未定义”

使用控制台我可以看到属性(执行console.log(body.entries [0] .attributes);)但是不可能更深入一步。这是邮递员的限制吗?还有另一种方法来准确地获取此设备。类型信息?

感谢您的帮助

亚历山大

1 个答案:

答案 0 :(得分:0)

Oups!抱歉编辑,我对此很新。这是这个问题的答案, 可以通过以下方式访问device.type属性: body.entries [0] .attributes [ 'device.type']

但是有一些限制: - 我不能使用.attributes [2],2是元素的索引,如果'attributes'可以看作是一个表。 - 语法是特殊的,如果我们使用双引号而不是单引号,它就不起作用 - 我仍然不知道为什么会在这个阶段发生......如果有人知道,我会很乐意向他朗读

干杯

亚历山大