gpt4 book ai didi

ios - 如何使用 2 个不同的 NSURLSession (iOS Swift) 获取 2 个不同的 webview

转载 作者:搜寻专家 更新时间:2023-10-31 23:00:08 25 4
gpt4 key购买 nike

我想创建一个具有 2 个 Webview 的 iOS 应用程序(1 个商店,1 个已登录的商店)

如果我在一个 webview 中登录,另一个 webview 包含相同的 cookie,并且第一个 webview 也会登录。

我需要第一个拥有自己的 session (cookie)!

我的计划是保护已保存的登录 Touch-ID,并免费提供人人都可以使用的 WebView 。

我目前正在搜索 2 个半小时并尝试了以下内容:

let request = NSMutableURLRequest(URL: NSURL(string: "https://www.my-url.com")!)
request.setValue("", forHTTPHeaderField: "Cookie")
webView.loadRequest(request)

最佳答案

是的,您可以将您的 cookie 保存到 webViewDidFinishLoad 的第一个 webview 中:

let storage = NSHTTPCookieStorage.sharedHTTPCookieStorage()
for cookie in storage.cookies as! [NSHTTPCookie]{
print(cookie)
}
NSUserDefaults.standardUserDefaults().synchronize()

如果将第二个 webview 设置为 loadRequest:

var req = NSURLRequest(URL: NSURL(string: urlString)!)
var storage = NSHTTPCookieStorage.sharedHTTPCookieStorage().cookies as! [NSHTTPCookie]

var reqCookies:[AnyObject] = []

for aCookie in storage {

reqCookies += [aCookie]

}

var headers = NSHTTPCookie.requestHeaderFieldsWithCookies(reqCookies)

self.webView.loadRequest(req)

否则你可以删除:

let storage = NSHTTPCookieStorage.sharedHTTPCookieStorage()
for cookie in storage.cookies! {
storage.deleteCookie(cookie)
}
NSUserDefaults.standardUserDefaults().synchronize()

编辑(评论后):要管理不同的 session ,您可以查看 Stackoverflow 对 handle your different sessions 的回答.

关于ios - 如何使用 2 个不同的 NSURLSession (iOS Swift) 获取 2 个不同的 webview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37436401/

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