6
이미지를 보안 URL 뒤에있는 보안 URL에서 다운로드하십시오. URL이 https://foo.com/bar.pngNSURLSession이 간헐적 인 SSLHandshake 실패 (-9810) 오류
가끔 SSLHandshake 오류가 발생합니다. 때로는 오류가 한 번 발생하지만 가끔 오류가 발생하여 파일을 다운로드 할 수없는 경우가 있습니다.
DownloadImageApp[2914] <Warning>: CHALLENGE!!! (NSURLAuthenticationMethodServerTrust)
DownloadImageApp[2914] <Warning>: server = foo.com
DownloadImageApp[2914] <Warning>: CFNetwork SSLHandshake failed (-9810)
DownloadImageApp[2914] <Warning>: CHALLENGE!!! (NSURLAuthenticationMethodServerTrust)
DownloadImageApp[2914] <Warning>: server = foo.com
DownloadImageApp[2914] <Warning>: CHALLENGE!!! (NSURLAuthenticationMethodNTLM)
DownloadImageApp[2914] <Warning>: NSURLAuthenticationMethodNTLM
나는 완전히 실패하더라도 도전
- (void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition, NSURLCredential *))completionHandler {
NSLog(@"CHALLENGE!!! (%@)", challenge.protectionSpace.authenticationMethod);
if (challenge.error)
NSLog(@" -- error: %@", challenge.error.description);
if (challenge.previousFailureCount > 0)
NSLog(@" -- previous failure count = %d", challenge.previousFailureCount);
if (challenge.proposedCredential)
NSLog(@" -- proposed credential user: %@", challenge.proposedCredential.user);
if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]) {
NSLog(@" server = %@", challenge.protectionSpace.host);
completionHandler(NSURLSessionAuthChallengeUseCredential, [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]);
} else if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodNTLM]) {
NSLog(@" NSURLAuthenticationMethodNTLM");
NSURLCredential *credential = [NSURLCredential credentialWithUser:@"username" password:@"passwordIsSecretShhh" persistence:NSURLCredentialPersistenceForSession];
completionHandler(NSURLSessionAuthChallengeUseCredential, credential);
} else {
NSLog(@" ????");
}
}
를 처리하기 위해 다음 코드를 사용하고 난 여전히 사파리, URL의 형태에 이상 팝업 수로드하고로드가 없습니다. 그래서 나쁜 웹 문제 나 호스팅 웹 서버의 문제가 아닌 문제를 일으킬 수있는 아이디어를 찾고 있습니다.
이 핸드 쉐이크 오류에 대한 해결책이 있습니까? – Ekra
Nope. 아니야. 때로는 재 시도하고 잘 작동하지만 때로는 3 번 연속 실패하고 전체 연결이 실패하는 결과가 발생합니다. – DBD