我有一个网站要求在初始页面登录,我希望用户保持登录状态,这样他们就不必每次打开应用程序时都输入登录信息。
这是我当前调用 WKWebkit 的代码。除了登录会话保留部分之外,它可以完成我需要它做的所有事情。
import SwiftUI
import WebKit
struct Webview: UIViewRepresentable {
var url: String
func makeUIView(context: Context) -> WKWebView {
guard let url = URL(string: self.url) else {
return WKWebView()
}
let request = URLRequest(url:url)
let wkWebview = WKWebView()
wkWebview.load(request)
return wkWebview
}
func updateUIView(_ uiView: WKWebView, context:
UIViewRepresentableContext<Webview>) {
}
}
我在 ContentView 上这样称呼它
Webview(url: "https://example.com")
我已阅读开发人员文档并搜索了 gist、SO 和苹果论坛以在 WKWebview 中管理登录会话/cookie。
我尝试在代码中实现的一些链接,但以零结束,如下:
WKWebView 无法设置 Cookie(iOS 11+)
https://developer.apple.com/forums/thread/99674
https://gist.github.com/skagedal/cd516751e655263218f1cad0281e9941
https://medium.com/dev-genius/how-to-get-cookies-from-wkwebview-and-uiwebview-in-swift-46e1a072a606
https://stackoverflow.com/a/26577303/15047236
在过去的两周里,我尝试了许多其他我可以阅读/理解它们功能的源代码,但徒劳无功。
请帮助这个可怜的灵魂。