【发布时间】:2012-02-08 17:18:47
【问题描述】:
我有一系列 NSObject,我想序列化为 JSON 并发布到服务。最终的对象由多个嵌套的这些 NSObject 子类组成。
这些对象中的每一个都遵循带有方法的协议,该方法使用适当的键在 NSDictionary 中返回该对象的属性。但是,其中一些属性是其他对象等等,使得序列化有点复杂。
有没有一种模式可以用来简化最终对象的序列化?使用 JSONKit,似乎我需要从最深的对象单独序列化每个字典并向后工作,检查错误,然后添加到复合字符串。我知道这不可能是使用这个功能强大的库的最佳方法。欢迎任何建议或指导。
编辑 1
【问题讨论】:
-
您可以将任何对象(嗯,几乎)表示为属性列表,就像您在编写
encodeWithCoder:时所做的那样。代码可以一样,得到的NSDictionary可以序列化成JSON。 -
大多数 JSON 库只需告诉根对象进行编码即可非常轻松地对复杂数据结构进行深度序列化。如果
JSONKit不允许这样做,也许您需要不同的 JSON 库。