【问题标题】:How to handle both JSON array and JSON object response如何处理 JSON 数组和 JSON 对象响应
【发布时间】:2016-11-09 15:14:41
【问题描述】:

我有一个从 HTTP 请求收到的 JSON 数组:

[
  '{{repeat(5, 7)}}',
  {
    _id: '{{objectId()}}'
  }
]

有时我只收到一个简单的 JSON 对象而不是一个数组。

我如何概括和存储响应,因为有时我得到一个数组,有时是一个普通的 JSON 对象。

目前我是这样做的: JSONObject j = new JSONObject(recvdString);

如果是 JSON 数组,我得到一个错误:A JSONObject text must begin with '{' at character 1 of

【问题讨论】:

  • 你用的是什么库?
  • @PeterGelderbloem Jettison
  • 如果你得到的 json 对象与你得到的 json 数组中的元素类型相同,否则你可以把对象放在一个数组中(你可以确定它是否是对象或数组解释here)
  • 如果没有问题,将 JSON 响应视为一个包含 1 个元素的 JSON 数组,即您的第一项工作是将响应视为一个数组,然后从那里开始

标签: java arrays json jettison


【解决方案1】:

不是有效的json。这个应该运行:

[
  "{{repeat(5, 7)}}",
  {
    "_id": "{{objectId()}}"
  }
]

但是,您可以在有用的在线服务中验证您的 json,例如 this

【讨论】:

    猜你喜欢
    • 2018-02-16
    • 1970-01-01
    • 2012-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多