我正在向 AFHTTPClient 的实例发送以下消息。我希望成功块被发送一个 Foundation 对象(字典),但调试器显示 JSON 是一个 _NSCFData 对象。 这个关于 SO的问题表明我需要将 Accept 标头设置为“application/json”。好吧,我正在这样做,但 AFNetworking 仍然没有解码响应正文中的 JSON。如果我自己使用 NSJSONSerialization 解码 json,我会得到一个 NSDictionary,如我所料。我究竟做错了什么?
[client setDefaultHeader:@"Accept" value:@"application/json"];
[client postPath:@"/app/open_connection/"
parameters:params
success:^(AFHTTPRequestOperation *operation, id JSON) {
NSLog(@"successful login! %@", [JSON valueForKeyPath:@"status"]);
}
failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"error opening connection");
NSAlert *alert = [NSAlert alertWithError:error];
[alert runModal];
}
];
注意:我正在使用 Django 在 Python 中对服务器进行编程。响应的内容类型是 'application/json'