1. Set the WKNavigationDelegate agent

self.wkWebView.navigationDelegate = self;
Copy the code

2. Implement proxy functions

- (void)webView:(WKWebView *)webView didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition, NSURLCredential * _Nullable))completionHandler {
    
    if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]) {
        if (challenge.previousFailureCount == 0) {
            NSURLCredential *credential = [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust];
            completionHandler(NSURLSessionAuthChallengeUseCredential, credential);
        } else{ completionHandler(NSURLSessionAuthChallengeUseCredential, nil); }}else{ completionHandler(NSURLSessionAuthChallengeUseCredential, nil); }}Copy the code