Requête Post avec AFHttpRequestOperationManager ne fonctionne pas
Je suis en utilisant AFHTTPRequestOperationManager poster quelques JSON à mon serveur, mon code est ci-dessous.
NSDictionary *parameters = [[NSDictionary alloc] initWithObjectsAndKeys:@"john", @"name", @"[email protected]", @"email", @"xxxx", @"password", @"1", @"type", nil];
//Do any additional setup after loading the view.
AFSecurityPolicy *policy = [[AFSecurityPolicy alloc] init];
[policy setAllowInvalidCertificates:YES];
AFHTTPRequestOperationManager *operationManager = [AFHTTPRequestOperationManager manager];
[operationManager setSecurityPolicy:policy];
[operationManager POST:@"posturl here" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"JSON: %@", [responseObject description]);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", [error description]);
}];
et la réponse est comme suit:
2013-11-18 16:49:29.780 SwapOnceApiTester[12651:60b] Error: Error Domain=AFNetworkingErrorDomain Code=-1011 "Request failed: unsupported media type (415), got 1664256" UserInfo=0x1565a6c0 {NSErrorFailingURLKey=xxxxxxx, AFNetworkingOperationFailingURLResponseErrorKey=<NSHTTPURLResponse: 0x15656db0> { URL: xxxxxxxxx } { status code: 415, headers {
"Cache-Control" = "max-age=604800";
Connection = "keep-alive";
"Content-Type" = "application/json";
Date = "Mon, 18 Nov 2013 11:49:28 GMT";
Expires = "Mon, 25 Nov 2013 11:49:28 GMT";
Server = nginx;
"Transfer-Encoding" = Identity;
"X-Powered-By" = PleskLin;
} }, NSLocalizedDescription=Request failed: unsupported media type (415), got 1664256}
Je ne sais pas quel est le problème avec cette.
OriginalL'auteur Shabir jan | 2013-11-18
Vous devez vous connecter pour publier un commentaire.
Vous devez définir votre demande et de la réponse sérialiseurs à manipuler du JSON en utilisant
AFJSONRequestSerializer
etAFJSONResponseSerializer
avant l'exécution de votre demande. À l'aide d'un NSDictionary littéral pour les paramètres de votre aide code de la clarté ainsi:Ne fonctionne pas pour moi. Le paramètre transmis vers le serveur est vide.
OriginalL'auteur Ralfonso
Viens de résoudre mon problème, mon serveur n'a pas été configuré pour accepter le jeu de caractères utf8 avec l'application/json, donc j'ai supprimé le jeu de caractères utf pour ajson sérialiseur Afnetworking 2.0 et maintenant il fonctionne correctement.
OriginalL'auteur Shabir jan