在WkWebView /移动Safari中为页面中的iframe启用会话cookies,可以通过以下步骤实现:
let configuration = WKWebViewConfiguration()
configuration.processPool = WKProcessPool()
let webView = WKWebView(frame: .zero, configuration: configuration)
let cookieStorage = HTTPCookieStorage.shared
if let cookies = cookieStorage.cookies {
for cookie in cookies {
webView.configuration.websiteDataStore.httpCookieStore.setCookie(cookie)
}
}
class WebViewDelegate: NSObject, WKNavigationDelegate {
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
// 网页加载完成后,可以在这里检查是否成功启用了会话cookies
}
}
let webViewDelegate = WebViewDelegate()
webView.navigationDelegate = webViewDelegate
if let url = URL(string: "https://example.com") {
let request = URLRequest(url: url)
webView.load(request)
}
这样,WkWebView /移动Safari中的iframe就可以使用会话cookies了。
推荐的腾讯云相关产品:腾讯云移动浏览器(Tencent Mobile Browser),它是腾讯云推出的一款基于Blink内核的移动浏览器,支持WkWebView,并提供了丰富的开发者工具和接口,方便开发者进行移动端网页开发和调试。产品介绍链接地址:https://cloud.tencent.com/product/tmb
领取专属 10元无门槛券
手把手带您无忧上云