認証チャレンジを受信している場合は、2番目のリクエストが表示されます。
したい場合は、単に第2の要求を停止し、認可挑戦、拒否することができます:
:あなたが先に行くと認証したい場合は、あなたのような何かを行うことができ、
[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;
}];
すべては、Webサービス上のユーザーの認証方法によって異なります。
出典
2016-10-21 23:19:33
Rob
Robあなたは救い主です...ありがとうございました...私は静かに別の要求をしていたNSURLSessionAuthChallengeUseCredentialを返していました....しかし、NSURLSessionAuthChallengeCancelAuthenticationChallengeを返すと、それは素晴らしい仕事をしました。 – lifemoveson