Downloading files WKWebView ios

前端 未结 3 1396
情书的邮戳
情书的邮戳 2021-02-06 16:03

I\'m in the progress of migrating my app from UIWebView to WKWebView. All is going well and working as I tinker more with it. However, I notice now that I can\'t download forum

3条回答
  •  心在旅途
    2021-02-06 16:48

    Swift 4:

    ChrisOSX's sollution also solved my issue. I'm trying to download a document from a link on a site after logging to that site. I've used WKZombie to scrape the link, and then I wanted to download the file using Alamofire. I added this

    if let httpResponse = navigationResponse.response as? HTTPURLResponse, let url = httpResponse.url {
        let allHeaders = httpResponse.allHeaderFields.reduce([String : String](), { (result, next) -> [String : String] in
        guard let stringKey = next.key as? String, let stringValue = next.value as? String else { return result }
            var buffer = result
            buffer[stringKey] = stringValue
            return buffer
        })
        let cookies = HTTPCookie.cookies(withResponseHeaderFields: allHeaders, for: url)
        for cookie in cookies {
            HTTPCookieStorage.shared.setCookie(cookie)
        }
    }
    

    to:

    func webView(_ webView: WKWebView, decidePolicyFor navigationResponse: WKNavigationResponse, decisionHandler: @escaping (WKNavigationResponsePolicy) -> Void)
    

    After this, the cookies are stored in the shared cookies, and I was able to download the file with Alamofire without and changes to the download methods..

提交回复
热议问题