iphone - AFNetworking + JSONKit 不能一起工作

标签 iphone ios xcode afnetworking jsonkit

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

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

AFNetworking + JSONKit + iOS 4.X = JSON 解析有效

AFNetworking + iOS 4.X = JSON 解析不起作用(因为 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];
    }
}];

最佳答案

奇怪的是 JSONKit 不适用于 iOS 5...尽管如此,有一种简单的方法可以覆盖 JSONKit 以进行 JSON 编码/解码,并首先尝试 NSJSONSerialization(如果可用)。只需将 #define _AFNETWORKING_PREFER_NSJSONSERIALIZATION_ 添加到项目中的头文件(也许是 Prefix.pch),就可以完成所有设置了。

关于iphone - AFNetworking + JSONKit 不能一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9139025/

相关文章:

ios - 使用 storyBoardID 通过硬编码加载 ViewController

ios - 刚接触IOS开发者中心,如何使用自己的手机运行应用程序?

ios - 如果将代码共享给其他系统,我是否需要在代码中安装 alamofire

Xcode 9 和 Xcode 8?

ios - 从开发人员门户获取团队列表 - 超时

iphone - 我可以在 iOS 中运行套接字服务器吗?

iphone - 为什么 NSCalendar 的 dateFromComponents 返回错误的日期?

ios - NSJSONSerialization 不适用于表情符号

ios - 如何以 .amr 格式在 objective c 中为 iphone 应用程序录制音频?

ios - 使用手势识别器将触摸转发到底层 View