2009-02-26 7 views
3

Wie können Sie im iPhone SDK programmatisch auf eine passwortgeschützte Site zugreifen, die durch .htaccess oder Zugriffskontrolle geschützt wurde.Wie würden Sie im iPhone SDK programmatisch einen Benutzernamen/ein Passwort an eine sichere Website weitergeben?

Mit NSURLRequest können Sie eine GET-Anfrage von einer URL ausführen. Aber wenn die URL geschützt ist, wie würden Sie das Benutzername-Passwort-Paar senden. Und was ist, wenn es mit der Standard-MD5-Verschlüsselung verschlüsselt ist?

Antwort

8

hinzufügen, so etwas zu Ihrem HTTPConnectionDelegate:

-(void)connection:(NSURLConnection *)aConnection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge { 
     if ([challenge previousFailureCount] == 0) { 
       NSURLCredential *newCredential; 
       newCredential = [NSURLCredential credentialWithUser:username password:password persistence:NSURLCredentialPersistenceNone]; 
       [[challenge sender] useCredential:newCredential forAuthenticationChallenge:challenge]; 
     } else { 
       [[challenge sender] cancelAuthenticationChallenge:challenge]; 
     } 
} 
+0

Thanks..Is dies als Klartext übergeben? Einige Webserver verweigern Klartextkennwörter. –

+0

Die Dokumente sind nicht klar, aber ich müsste raten, dass sie die Authentifizierungsmethode verwendet, die vom Server angefordert wird. Wenn das Basic-Auth ist, wird es nicht verschlüsselt (es sei denn, die Verbindung ist SSL). Wenn es auth verdaut, dann wird es die md5 Einweg-Hash-Methode verwenden. –

Verwandte Themen