我有一系列NSObject我想序列化为JSON并发布到服务.最终对象由嵌套在彼此内的这些NSObject子类的几个级别组成.
这些对象中的每一个都遵循一个协议,该协议使用一个方法,该方法使用适当的密钥返回NSDictionary中的对象属性.但是,其中一些属性是其他对象,等等,使序列化有点复杂.
有没有我可以用来简化序列化最终对象的模式?使用JSONKit,似乎我需要从最深的对象单独序列化每个字典并向后工作,检查错误,然后添加到复合字符串.我知道这不可能是使用这个非常强大的库的最佳方法.欢迎提出任何建议或指导.
编辑1
AutomagicCoding库使用低级属性内省将任何NSObject递归转换为NSDictionary,然后可以直接将其序列化为JSON:
https://github.com/psineur/NSObject-AutomagicCoding
它可能涉及对具有结构属性等的类进行一些微调,但它可能是您将找到的最简单,最省力的方法.
更新:
我已经编写了自己的库,HRCoding(https://github.com/nicklockwood/HRCoder),可以使用NSCoding协议将任何对象加载/保存为JSON)