인증 요청을받은 경우 두 번째 요청이 표시됩니다.
당신이 원하는 경우, 단순히 두 번째 요청을 중지 승인 도전, 거부 할 수 있습니다
:
: 당신은 같은 것을 할 수있는 당신이 가서 인증하려는 경우,
[manager setTaskDidReceiveAuthenticationChallengeBlock:^NSURLSessionAuthChallengeDisposition(NSURLSession * _Nonnull session, NSURLSessionTask * _Nonnull task, NSURLAuthenticationChallenge * _Nonnull challenge, NSURLCredential *__autoreleasing _Nullable * _Nullable credential) {
return NSURLSessionAuthChallengeCancelAuthenticationChallenge;
}];
을 또는을,
[manager setTaskDidReceiveAuthenticationChallengeBlock:^NSURLSessionAuthChallengeDisposition(NSURLSession * _Nonnull session, NSURLSessionTask * _Nonnull task, NSURLAuthenticationChallenge * _Nonnull challenge, NSURLCredential *__autoreleasing _Nullable * _Nullable credential) {
if (challenge.previousFailureCount == 0) {
*credential = [NSURLCredential credentialWithUser:self.user password:self.password persistence:NSURLCredentialPersistenceForSession];
return NSURLSessionAuthChallengeUseCredential;
}
return NSURLSessionAuthChallengeCancelAuthenticationChallenge;
}];
모두 웹 서비스에서 사용자를 인증하는 방법에 따라 다릅니다.
출처
2016-10-21 23:19:33
Rob
롭 당신은 구세주입니다 ... 고마워요 ... 나는 조용히 .... 또 다른 요청을하고 있던 NSURLSessionAuthChallengeUseCredential을 되 돌리는 중이었습니다.하지만 줄을 바꾸면 NSURLSessionAuthChallengeCancelAuthenticationChallenge가 돌아 왔습니다. – lifemoveson