Swift WKWebView

Swift WKWebView

如何使用 WKWebView 处理 NTLM 身份验证,目的是使用凭据(Sharepoint 托管应用程序)加载安全的 URL 同样,我想向 http 请求添加一个键值对 任何使用 swift2.0 处理我的案例的代码示例将不胜感激。

我仔细阅读了文档,发现下面的解决方案等同于方法 shouldSatratLoading 等。

func webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: (WKNavigationActionPolicy) -> Void) {
    print("  decidePolicyForNavigationAction.......")
    let headerArr = navigationAction.request.allHTTPHeaderFields?.keys.array
    let headerIsPresent =  headerArr?.contains(APP_HEADER_ID)

    if headerIsPresent! {
         decisionHandler(.Allow)
    }else{
        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), {
            dispatch_async(dispatch_get_main_queue(), {
                let newRequest: NSMutableURLRequest = navigationAction.request as! NSMutableURLRequest
                // set new header
                newRequest.addValue(APP_HEADER_VALUE, forHTTPHeaderField:APP_HEADER_ID)

                // reload the request
                webView.loadRequest(newRequest)
            })
        })
      decisionHandler(.Cancel)
    }
}

如果有人需要更多信息,请告诉我