gpt4 book ai didi

ios - 两个单独的 cookie 存储(UIWebView 或 WKWebView)

转载 作者:IT王子 更新时间:2023-10-29 05:51:32 28 4
gpt4 key购买 nike

我想在不同的 webView 中登录同一站点的多个帐户。例如,我有一个 Tab Bar Controller,它包含三个 view controllers,每个 view controllers 都包含 webView。例如,我在每个类中为 webView 嵌入了 stackoverflow url。用户如何使用这三个webView同时登录不同的账户?我已经试过了,但我一次只能登录一个用户。我发现我需要为每个 UIWebView 创建单独的 cookie,但大多数答案都在 objective-c 中,而不是我想要的正确答案。例如 ( First Second Third )谁能告诉我该怎么做?

class FirstViewController: UIViewController , UIWebViewDelegate{

@IBOutlet weak var webView: UIWebView!
@IBOutlet weak var activityIndicator: UIActivityIndicatorView!

override func viewDidLoad() {
webView.delegate = self
let requestURL = NSURL(string: "http://stackoverflow.com")
let request = NSURLRequest(URL: requestURL!)
activityIndicator.hidesWhenStopped = true
activityIndicator.startAnimating()
webView.loadRequest(request)

}
func webViewDidFinishLoad(webView: UIWebView) {
activityIndicator.stopAnimating()
}

}

class SecondViewController: UIViewController, UIWebViewDelegate{

@IBOutlet weak var webView: UIWebView!
@IBOutlet weak var activityIndicator: UIActivityIndicatorView!

override func viewDidLoad() {
webView.delegate = self
let requestURL = NSURL(string: "http://stackoverflow.com")
let request = NSURLRequest(URL: requestURL!)
activityIndicator.hidesWhenStopped = true
activityIndicator.startAnimating()
webView.loadRequest(request)

}
func webViewDidFinishLoad(webView: UIWebView) {
activityIndicator.stopAnimating()
}


}

谢谢

The preview of my executing code.

最佳答案

您可以通过使用 WKWebSiteDataStore 的不同实例来使用 WKWebView 执行此操作:

let configuration1 = WKWebViewConfiguration()
configuration1.websiteDataStore = WKWebsiteDataStore.nonPersistent()
self.webView1 = WKWebView(frame: CGRect.zero, configuration: configuration1)
self.view.addSubview(self.webView1)

let configuration2 = WKWebViewConfiguration()
configuration2.websiteDataStore = WKWebsiteDataStore.nonPersistent()
self.webView2 = WKWebView(frame: CGRect.zero, configuration: configuration2)

不幸的是,您将在应用程序重启后丢失 webView 数据(例如 cookie、缓存等),因为非持久性 WKWebsiteDataStore 无法保存到磁盘(您可能会注意到 WKWebsiteDataStore 实现了 NSCoding,但它不适用于非持久性存储。

关于ios - 两个单独的 cookie 存储(UIWebView 或 WKWebView),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38711649/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com