3

AFNetworking + JSONKit + iOS 5.0+ = JSON 解析不起作用(尝试解析时返回 nil 对象)。

AFNetworking + iOS 5.0+ = JSON 解析工作正常。

AFNetworking + JSONKit + iOS 4.X = JSON 解析工作

AFNetworking + iOS 4.X = JSON Parsing 不起作用(因为 NSJSONSerializer 仅适用于 iOS5.0+)。

我该如何解决这个问题?代码片段:

AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
    if([sender respondsToSelector:finish])
    {
        NSArray *responseArray = JSON;
        [sender performSelector:finish withObject:JSON];
    }
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id JSON) {
    NSLog(@"Error retrieving: %@\n%@", error, response);
    if([sender respondsToSelector:fail])
    {
        [sender performSelector:fail];
    }
}];
4

1 回答 1

2

奇怪的是 JSONKit 不能与 iOS 5 一起工作......尽管如此,有一种简单的方法可以覆盖 JSONKit 以进行 JSON 编码/解码,如果可用的话,首先尝试 NSJSONSerialization。只需添加#define _AFNETWORKING_PREFER_NSJSONSERIALIZATION_到项目中的头文件(Prefix.pch也许是),您就应该准备就绪。

于 2012-02-04T18:32:10.620 回答