我在将 JSON 映射到基础对象时遇到问题...
当 JSON 字符串不包含该键时,有什么方法可以将“nil”值放入类成员变量?
例如,这是我的 DataModel 类:
@interface DataModel : JSONModel
@property (strong, nonatomic) NSString* Status;
@property (strong, nonatomic) NSString* ErrorCode;
@property (strong, nonatomic) ClientModel* Client;
@end
该类用于解析 ClientModel 对象中有关客户端的一些信息,并具有 ErrorCode 和 Status 字段。
状态字段可以包含“Ok”或“Error”。这里没问题。下一个字段是一个错误代码,以防 json 包含“错误”作为状态。
问题是服务器不会总是向我发送 ErrorCode 的键值(当状态为“Ok”时,服务器 API 不会发送 ErrorCode 键值)。
考虑到我无法修改服务器发送的 JSON 的事实,当 JSON 字符串不包含它时,如何解析在我的模态对象中接收到的 JSON 字符串并将“nil”作为 ErrorCode 值?
是否有任何图书馆允许我们这样做?我目前正在使用 JSONModel,但是当缺少键时,它会给我一个“传入数据无效”错误。我知道 Jackson API for java 处理这种情况,但我不知道在 Objective-C 中是否有类似的东西。如果我可以使用 NSJSONSerialization 解决方法,我也会很高兴听到它。
谢谢!