Estoy enviando el siguiente mensaje a una instancia de AFHTTPClient. Espero que el bloque de éxito reciba un objeto Foundation (un diccionario) pero el depurador me muestra que JSON es un objeto _NSCFData. This question on SO indica que necesito configurar el encabezado Aceptar en 'application/json'. Bueno, estoy haciendo eso, pero AFNetworking todavía no está decodificando el JSON en el cuerpo de respuesta. Si decodifico el json usando NSJSONSerialization obtengo un NSDictionary como espero. ¿Qué estoy haciendo mal?AFNetworking devuelve un objeto _NSCFData en lugar de JSON
[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];
}
];
Nota: Estoy programando el servidor en Python usando Django. El tipo de contenido de la respuesta es 'application/json'
Trate de añadir [registerHTTPOperationClass cliente: [clase AFJSONRequestOperation]]; –