ios - AFNetworking (iOS) - 响应不是 NSDictionary

标签 ios web-services afnetworking

我知道我的请求格式正确,但我从网络服务获得的响应不是 NSDictionary。

  1. 为什么它不是 NSDictionary?
  2. 如何判断“responseObject”是哪种对象?

    AFHTTPRequestOperation *operation = [[AFParseAPIClient sharedClient]  HTTPRequestOperationWithRequest:request success:^(AFHTTPRequestOperation *operation, id responseObject) {
        if ([responseObject isKindOfClass:[NSDictionary class]]) {
            NSLog(@"Response for %@: %@", className, responseObject);
            [self writeJSONResponse:responseObject toDiskForClassWithName:className];
        }else{
            //NSLog(@"Response NOT NSDictionary: %@", [responseObject class]);
            NSString *str = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
            NSLog(@"str: %@", str);
        }
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"Request for class %@ failed with error: %@", className, error);
    }];
    

这是我得到的:

//Response NOT NSDictionary: <7b227265 73756c74 73223a5b 7b22636f ...>

编辑:这是我得到的结果:

str: {"results":[{"desc":"My description.","device_iPad":true,"device_iPhone":true,"createdAt":"2012-09-05T18:36:11.431Z","updatedAt":"2012-09-05T22:00:52.199Z"}]}

最佳答案

只需在创建操作后添加这行代码

operation.responseSerializer = [AFJSONResponseSerializer 序列化器];

关于ios - AFNetworking (iOS) - 响应不是 NSDictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12290207/

相关文章:

ios - 我的 scrollView 剪切了我最后一张图片 Swift 3

web-services - ColdFusion:如何使用 SharePoint 的 getListItems()

java - 如何在不安装到 keystore 的情况下连接到 SSL 证书 Web 服务?

c# - asmx 网络服务上的大型二进制文件

iphone - AFJSONRequestOperation 数组填充但不能成功 block 之外的 NSLog 内容

ios - 如何回到 WKWebView 历史记录中的起点

ios - 进入viewController后如何加载数据?

ios - 等到使用 removePendingNotificationRequests 删除来自 UNUserNotificationCenter 的本地通知 ios 10 swift 3

ios - 设置 AFNetworking 3.x 单例请求和响应序列化