2 garaster garaster 于 2012.11.06 10:37 提问

NSInvalidArgumentException引发应用崩溃

看一下我的代码,从网站服务器获得数据,但是崩溃了:

- (void)loadDataSource  
 {

   // Request  
    NSString *URLPath = [NSString stringWithFormat:@"http://imgur.com/gallery.json"];  
    NSURL *URL = [NSURL URLWithString:URLPath];
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:URL];

**CRASHED HERE**    [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error)  
 {

        NSInteger responseCode = [(NSHTTPURLResponse *)response statusCode];

        if (!error && responseCode == 200) {
            id res = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
            if (res && [res isKindOfClass:[NSDictionary class]]) {
                self.items = [res objectForKey:@"gallery"];
                [self dataSourceDidLoad];
            } else {
                [self dataSourceDidError];
            }
        } else {
            [self dataSourceDidError];
        }
    }];
}    

1个回答

vikeyToy
vikeyToy   2012.11.06 11:43
已采纳

代码没问题,但是结果中没有对象关键字“gallery”的,看起来关键字好像是“data”。所以用下面的代码:

self.items = [res objectForKey:@"data"]
garaster
garaster 谢谢~
5 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!