这是 iOS 中 REST/Webservice 身份验证的书本示例。
我的密码错误,我进入 else 条件的第二部分,这是正确的行为。
但是[error localizedDescription]显示为空。我期待在这里显示一个错误。知道我缺少什么吗?
我明白了:
无法验证:(空)
- (void)connection:(NSURLConnection *)conn didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge
{
if ([challenge previousFailureCount] == 0) {
NSURLCredential *newCredential;
newCredential = [NSURLCredential credentialWithUser:[FTKeychain loadValueForKey:IOS_USER_EMAIL]
password:[FTKeychain loadValueForKey:IOS_USER_PASSWORD]
persistence:NSURLCredentialPersistenceNone];
[[challenge sender] useCredential:newCredential forAuthenticationChallenge:challenge];
} else {
[[challenge sender] cancelAuthenticationChallenge:challenge];
// inform the user that the user name and password
// in the preferences are incorrect
// Why did I fail?
NSError *error = [challenge error];
NSLog(@"Can't authenticate: %@", [error localizedDescription]);
// why is error localizedDescription null ?
}
}