读取JSON结果时出现异常

时间:2013-04-20 20:26:07

标签: objective-c json cocoa nsjsonserialization

我正在尝试解析以下JSON响应:http://www.breakingnews.com/api/v5/items?compact=false

这是我解析它的代码:

NSError* error = nil;
NSData* data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.breakingnews.com/api/v5/items?compact=false"] options:NSDataReadingUncached error:&error];
if (error) {
    NSLog(@"%@", [error localizedDescription]);
} else {

    NSError *e = nil;
    NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData: data options:kNilOptions error: &e];

    if (!jsonArray) {
        NSLog(@"Error parsing JSON: %@", e);
    } else {
        for(NSArray* item in jsonArray) {

            NSLog(@"Item: %@", item);

        }
    }

}

但是,我收到了这个错误:

  

- [__ NSCFString objectAtIndex:]:无法识别的选择器发送到实例0x101810a40

为什么 - 我做错了什么?

1 个答案:

答案 0 :(得分:2)

检查您正在使用的对象的类型。您假设所有内容都是NSArray,而实际上JSON中的内容可以是NSArrayNSDictionaryNSStringNSNumber和{{1 }}