解析 JSON 对象时 JSONSerilazation 不起作用

Posted

技术标签:

【中文标题】解析 JSON 对象时 JSONSerilazation 不起作用【英文标题】:JSONSerilazation not working while parsing JSON object 【发布时间】:2015-03-18 10:47:01 【问题描述】:

解析从服务器获取的 NSData 时出现错误。 我无法获得 NDIctinory。

我收到错误“对象中的值没有字符串键”

 NSDictionary* json = [NSJSONSerialization JSONObjectWithData:[body dataUsingEncoding:NSUTF8StringEncoding]
                                                                     options:kNilOptions
                                                                       error:&error];

有人可以帮我解决这个问题吗?

【问题讨论】:

google.co.in/… 你能发布你的完整代码吗? 修正了一些语法和格式。删除无关的谢谢。 你能把收到的 JSON 贴出来吗 如果您不向我们展示 JSON,就很难告诉您出了什么问题。 【参考方案1】:

错误消息说在对象(这就是 JSON 所称的字典)中有一个不是字符串的键,即。 e.一个数字或另一个对象。这是无效的。

来自 RFC7159, 4:

对象结构表示为一对花括号 围绕零个或多个名称/值对(或成员)。 name 是一个 字符串

因此,您将获得无效的 JSON。如果可能的话,改变它。此外,您可以在 Q 中发布整个 JSON。(在对此 A 的评论中。)

【讨论】:

以上是关于解析 JSON 对象时 JSONSerilazation 不起作用的主要内容,如果未能解决你的问题,请参考以下文章