1

这真的很奇怪。

我们正在访问一个总是返回一个数组的 json Twitter API。即 https://twitter.com/statuses/user_timeline/485963081.json

我们的确是:

if([NSJSONSerialization class]) {
        NSError *error = nil;
        jsonResponse = [NSJSONSerialization JSONObjectWithData:responseData options:0 error:&error];    
        DLog(@"JSON Parsing Error: %@", error);

    } else {
        NSString * jsonString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
        jsonResponse = [jsonString JSONValue];
    }
    if([jsonResponse count] > 0) {
        NSString *jsonText = [[jsonResponse objectAtIndex:0] objectForKey:@"text"];
        twitterText = jsonText;
    }

这在绝大多数情况下都有效。剩下的,我们得到这个:

[__NSCFDictionary objectAtIndex:]: unrecognized selector sent to instance

注意,所有错误都在 iOS5 上,所以 SBJSON 库不适用。

有时 NSJSONSerialization 将数组解析为字典。坦率地说,使用来自 twitter 的数据是不可能的。那么这里发生了什么?

4

0 回答 0