AFNetworking 2.0 - inattendu NSURLErrorDomain erreur -1012
Nous avons rencontré le problème suivant avec notre application qui utilise AFNetworking 2.0.
Lors de l'utilisation de AFHTTPRequestOperationManager
's GET méthode, nous avons obtenu une erreur NSURLErrorDomain code -1012
. La requête utilisée HTTPS et le serveur ne nécessite pas d'authentification de l'utilisateur. La demande n'a jamais atteint le serveur par la voie.
Nous avons couru quelques tests et c'est la première fois que l'erreur a été produite et nous nous demandons comment cette erreur peut se produire parce qu'il ne semble pas pertinent.
Installation de AFHTTPRequestOperationManager :
httpOperationManager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:
[NSURL URLWithString: HTTPS_URL)]];
httpOperationManager.responseSerializer =
[AFXMLParserResponseSerializer serializer];
[[AFNetworkActivityIndicatorManager sharedManager] setEnabled: YES];
REQUÊTE GET
AFHTTPRequestOperation *op =[httpOperationManager GET:
[NSString stringWithFormat:SOME_PATH]
parameters:nil
success:^(AFHTTPRequestOperation *operation, id responseObject) {
//code to setup NSXMLParser ...
}
failure: ^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"error %@", [error localizedDescription]);
}];
- Eh bien, quelle est la question?
- Ma question est de savoir ce qui a causé la -1012 erreur, puisque le serveur ne nécessite pas d'authentification de l'utilisateur et de notre code effectue simplement la demande sans l'annuler. Si c'est AFNetworking qui a annulé la demande, nous aimerions comprendre pourquoi et comment le traiter.
Vous devez vous connecter pour publier un commentaire.
Je pense que vous avez déjà résolu le problème, mais si vous êtes en essayant de s'authentifier sur un serveur qui ne dispose pas d'un certificat valide, vous devez définir
YES
pour les biensallowInvalidCertificates
dans votreAFHTTPRequestOperationManager
objet:Aussi, comme @a1phanumeric dit, il peut être nécessaire d'inclure cette ligne:
Acclamations.
[operationManager.securityPolicy setValidatesDomainName:NO];
pour obtenir que cela fonctionne.validatesDomainName
plus. Nous jouions avec un pur adresse IP ici et il est très nécessaire afin de travailler.NSURLErrorDomain -1012 est
NSURLErrorUserCancelledAuthentication
. (Voir la liste des codes d'erreur et de recherche pour -1012.)Vous de l'état, "le serveur ne nécessite pas d'authentification de l'utilisateur". Mais cette erreur ne serait pas appelé si c'était vrai.
Causes possibles:
HTTPS_URL
etSOME_PATH
n'est pas ce que vous attendez, et certains autres serveur demande d'autorisation deUn peu de débogage conseils:
curl
ou Avancé Reste Client et d'observer la réponse du serveurNote de côté: je pense que
[NSString stringWithFormat:SOME_PATH]
est inutile - pourquoi ne pas simplement utiliserSOME_PATH
?