NSJSONSerialization.JSONObjectWithData返回奇怪的数组而不是字典

时间:2016-05-25 13:58:52

标签: ios swift nsjsonserialization

我正在尝试解析来自HTTP响应的数据:

let dataDictionary = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers) as! NSMutableDictionary

结果我得到了这个奇怪的数组:

(lldb) po dataDictionary
▿ 3 elements
▿ [0] : 2 elements
  - .0 : message
  - .1 : http://abc.abc
▿ [1] : 2 elements
  - .0 : xyz
  - .1 : 1234
▿ [2] : 2 elements
  - .0 : status
  - .1 : ok

这是我收到的数据(格式很好,没有换行符):

{
 "message": "http://abc.abc",
 "xyz": "1234",
 "status": "ok"
}

这是编码问题吗?这里发生了什么?

1 个答案:

答案 0 :(得分:2)

它不是数组,它是您的NSMutableDictionary。

在调试器中打印时看起来像是:有3个条目,每个条目都有一个键和一个值。

dataDictionary上执行 ALT + CLICK 并阅读Xcode提示,您将看到该类型。