自从我将标头请求库切换到AFNetWorking后,我收到错误-[__NSCFString objectForKey:]:
。这是导致错误的代码。
- (void) syncContentsFinish : (id) result
{
Content *content;
NSArray *contentsArray = [result objectForKey:@"content"];
for ( id object in contentsArray ) {
content = [Content getContentWithDictionary:object];
}
具体而言,content =
方法导致此错误。这是我从服务器获得的结果。
{
content = {
count = 0;
id = 42488267526162;
};
message = success;
responseCode = 200;
}
我根本不知道是什么导致了这一点,但任何提示或建议都表示赞赏,如果您需要我发布更多代码(例如检索数据的处理程序或Content
类请让我们我知道。
编辑:实际上这是误导性的。在Content类中,这就是我实际上导致App崩溃的原因。
+ (Content *) getContentWithDictionary : (NSDictionary *) dic
{
Content *content = [[Content alloc] init];
if ( [dic objectForKey:@"id"] != [NSNull null] ) {
content.contentId = [[dic objectForKey:@"id"] longLongValue];
}
答案 0 :(得分:0)
它看起来像是NSString而不是NSDictionary。
答案 1 :(得分:0)
results
是一本字典,这很正确。但"content"
键的值不是数组,而是另一个字典。因此,您的for
循环实际上正在迭代字典的键。这意味着每个object
都是NSString
。