Question

Si le site ne nécessite pas d'authentification, mon code fonctionne très bien, si elle le fait, elle erreurs avec EXC_BAD_ACCESS droit après impression « lettres de créance créé ». Je ne suis pas relâcher quoi que ce soit, et ce code est copié directement à partir de la documentation - une idée de ce qui ne va pas

- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge {
 if ([challenge previousFailureCount] == 0)
 {
  NSLog(@"received authentication challenge");

  NSURLCredential *newCredential;
  newCredential=[NSURLCredential credentialWithUser:@"root"
             password:@"rootpassword"
             persistence:NSURLCredentialPersistenceForSession];


  NSLog(@"credential created");

  [[challenge sender] useCredential:newCredential forAuthenticationChallenge:challenge];

  NSLog(@"responded to authentication challenge");

 }
 else
 {
  NSLog(@"previous authentication failure");

  UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Authentication Failure" 
              message:@"Website did not accept the username and password."
                delegate:nil
             cancelButtonTitle:@"OK" 
             otherButtonTitles:nil];
  [alert show];
  [alert release];
 }
}
Était-ce utile?

La solution

avère que c'est quelque chose à voir avec cette méthode d'authentification particulière des sites -. Remplaçant le site que je veux connecter à un autre site et le code fonctionne très bien

(je tentais de gratter les données de la page d'état de unRAID, unRAID n'utilise pas un serveur web réel, mais emhttp donc je suppose que a quelque chose à voir avec elle)

Autres conseils

La seule chose que vous n'êtes pas le contrôle est la valeur de retour de [challenge sender]. Essayez d'imprimer sa description pour vous assurer qu'il est non nul.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top