ios - 如何让我的 AFNetworking "responseObject"收到我可以解析的 NSDictionary?

标签 ios objective-c nsdictionary afnetworking nsdata

我对 AFNetworking 1.0 进行了调用,它返回一个 responseObject,其中包含我想要的 API 中的数据:

[[AFDiffbotClient sharedClient] postPath:@"http://diffbot.com/api/batch" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {

但是,我不知道如何处理responseObject

如果我检查 [responseObject class],我会得到 NSData

如果我 NSLog(@"%@", responseObject) 我得到一堆数字(我假设的内存地址):

<5b0a7b22 68656164 65727322 3a5b7b22 6e616d65 223a6e75 6c6c2c22 76616c75 65223a22 48545450 2f312e31 20323030 204f4b22 7d2c7b22 6e616d65 223a2244 61746522 2c227661 ...

如果我这样做:

NSString *responseString = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
NSLog(@"%@", responseString);

我得到了我想要的输出! 但是,它是一个NSString

如果我这样做:

NSError *error;
NSDictionary *responseDictionary = [NSJSONSerialization JSONObjectWithData:responseObject options:kNilOptions error:&error];
NSLog(@"%@", responseDictionary);

我得到一个 NSDictionary,但它缺少绝大多数响应(即:我没有得到包含在 NSString 方法中的内容)。

我应该如何处理这个对象?

最佳答案

我就是这样做的..

- (void) requestDataFinish:(NSData *)data withError:(NSError *)networkError
{
    NSDictionary *responseData;
    NSError *error = nil;
    if (data != nil) {
        responseData = [NSJSONSerialization JSONObjectWithData:data
                                                       options:NSJSONReadingMutableContainers
                                                         error:&error];
    }
...

关于ios - 如何让我的 AFNetworking "responseObject"收到我可以解析的 NSDictionary?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21315996/

相关文章:

objective-c - ActionSheet 导致多个 Popover 在 iPad 上显示

objective-c - InAppPurchases 不适用于 PhoneGap App

ios - 如何使用 ObjectMapper 将自定义 Enum/RawRepresentable 映射到字典?

ios - 具有 NSDictionary 项目的 NSMutableArray 中的独特项目?

ios - 如何在移动 Safari 上渲染 3D 物体图片?

ios - UITableView 可见单元自动布局后计算 View 位置

ios - 如何将两个数组对象作为对象和键添加到 Objective C 中的第三个数组

ios - 如何访问这些字典值? ( swift )

iOS 8.1 模拟器总是使用美国键盘布局,尽管德国硬件键盘

ios - 音频时间戳格式 + 'MusicDeviceMIDIEvent'