Cocoa Error 3840 cuando la request de POST con AFNetworking 2

Llamo a esta function y devuelvo Cocoa Error 3840 cada vez. Intento depurar y corregirlo y error cuando solicito en lugar de cuando analizo el resultado


Encontré este error en lockings de falla cuando solicité.

Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn't be completed. (Cocoa error 3840.)" (JSON text did not start with array or object and option to allow fragments not set.) UserInfo=0x109230960 {NSDebugDescription=JSON text did not start with array or object and option to allow fragments not et.} 2013-11-01 12:09:30.925 MagicBox[87431:70b] The operation couldn't be completed. (Cocoa error 3840.) 

Ese es mi código, gracias de antemano.

 - (void)loginWithUserName:(NSString *)userName Password:(NSString *)password orFacebook:(NSString *)facebookID withResponseBlock:(ResponseBlock)responseBlock { if (!userName && !facebookID) { NSError *error = [NSError errorWithDomain:@"Missing Parameters" code:400 userInfo:@{ NSLocalizedDescriptionKey : @"Username or FacebookID is requinetworking"}]; responseBlock(error, nil); } NSDictionary *params; if (facebookID) { params = @{ @"fb_id": facebookID }; } else { params = @{ @"username": userName, @"password": password }; } AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; NSString *loginURL = [self requestWithPath:@"/api/login"]; [manager POST:loginURL parameters:params constructingBodyWithBlock:nil success:^(AFHTTPRequestOperation *operation, id responseObject) { if (responseBlock) { responseBlock(nil, responseObject); } } failure:^(AFHTTPRequestOperation *operation, NSError *error) { if (responseBlock) { responseBlock(error, nil); } }]; } 

Lo solucioné agregando la siguiente línea de código

manager.responseSerializer = [serializador AFHTTPResponseSerializer];

Había estado atrapado con el mismo problema.

Lo resolví con esto:

  self.requestSerializer = [AFJSONRequestSerializer serializer]; 

es decir, verifique si el AFHTTPRequestOperationManager utiliza un serializador de request correcto.

¡Espero que esto le pueda ayudar!

Resolví esto asegurándome de que los datos devueltos estén en la serialization correcta con las respuestas XML de las hojas de cálculo de Google (en lugar de JSON)

 manager.responseSerializer = [AFXMLParserResponseSerializer serializer]; 

Lo solucioné agregando la siguiente línea de código

manager.requestSerializer = [serializador AFJSONRequestSerializer];