看起来很容易,但我发现自己在挣扎.. 我有这个 JSON 响应:
{"data":
{"badParams":
{"arbitraryKey":"arbitraryValue",
"arbitraryKey2":"arbitraryValue2",
"arbitraryKey3":"arbitraryValue3" ,
...
}
}
}
我想解析对 NSDictionary 的响应,其中包含我在响应中获得的所有 key:value
对:
NSDictionary *response == {"arbitraryKey":"arbitraryValue",
"arbitraryKey2":"arbitraryValue2",
"arbitraryKey3":"arbitraryValue3",...}
我试过 RKDynamicMapping 但没成功:\
有什么建议吗?
最佳答案
RestKit 没有为 NSDictionarys 准备。但是如果有必要,你可以做一些丑陋的解决方法......
此类将字典包装在容器类中,将 KVC 调用转发到字典的 setObject:forKey
。
@interface RestKitDictionaryContainer : NSObject
@property (nonatomic, strong) NSMutableDictionary * dictionary;
@end
@implementation RestKitDictionaryContainer
- (id)init
{
self = [super init];
if (self) {
_dictionary = [NSMutableDictionary dictionary];
}
return self;
}
-(void)setValue:(id)value forUndefinedKey:(NSString *)key
{
[_dictionary setObject:value forKey:key];
}
-(id)valueForUndefinedKey:(NSString *)key {
return [_dictionary objectForKey:key];
}
@end
现在您必须照常进行所有映射。 在 RestKit 调用后,您只需从此类中取出字典或将其用作字典。 嗯,我认为这很丑陋,不应该使用,但这是你的决定......
关于ios - Restkit 简单的 NSDictionary 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18007199/