与 UIWebView 共享 WKWebView Cookie [英] Share WKWebView Cookies With UIWebView

查看:44
本文介绍了与 UIWebView 共享 WKWebView Cookie的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试与 UIWebView 共享 WKWebView Cookie 以获取所有 Cookie.我知道从 UIWebView 获取所有 cookie 作为比较 WKWebView 非常简单.

I'm trying to share WKWebView Cookies with UIWebView for getting all cookies. I know its very simple to get all cookies from UIWebView as compare WKWebView.

我在选项卡式应用程序模板中创建了两个 WebView(WKWebView、UIWebView).下面是我用来与 UIWebView 共享 WKWebView cookie 但没有成功的方法.

I create two WebView's (WKWebView, UIWebView) in Tabbed Application Template. Below method that i am using for share WKWebView cookies with UIWebView but didn't get success.

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

     let response = navigationResponse.response as? HTTPURLResponse
     let cookies = HTTPCookie.cookies(withResponseHeaderFields: response?.allHeaderFields as! [String : String], for: (response?.url)!)

     HTTPCookieStorage.shared.cookieAcceptPolicy = HTTPCookie.AcceptPolicy.always

     for cookie in cookies {
     HTTPCookieStorage.shared.setCookie(cookie)
     }

    decisionHandler(WKNavigationResponsePolicy.allow);
 }

当我从 WKWebView 登录我的帐户时使用上面的代码,UiWe​​bView 还没有登录我.我还尝试与 WKWebView 共享 UIWebView Cookie,并且成功了.

Using above code when i Login Into my account from WKWebView, UiWebView didn't Login me already. I also tried to share UIWebView Cookies With WKWebView, and it worked.

谁能告诉我如何与 UIWebView 共享 WKWebView Cookie 或如何从 WKWebView 获取所有 Cookie?

Please can anyone tell me how i can share WKWebView Cookies With UIWebView or how i can get all cookies from WKWebView?

谢谢

推荐答案

设置 cookie 和加载 webview 真的很痛苦,在加载 webview 之前设置 cookie 很棘手.如果您仅在委托方法中设置 cookie,则它永远不会第一次加载页面.您必须在加载页面之前处理 cookie.您可以在其他问题中查看我的答案,但它很快,但您可以在目标 c 中遵循相同的技术.我可以将 cookie 设置为被 WKWebView 使用?

This is really painful to setup cookies and load webview, it's tricky to set cookies before loading webview. if you set cookies in just a delegate method it never load page first time. you must take care of cookies are done before loading page. you can ceck my answer in other question, but it is in swift but you can follow the same technique in objective c. Can I set the cookies to be used by a WKWebView?

这篇关于与 UIWebView 共享 WKWebView Cookie的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆