0
代碼如何在UIWebView加載請求之前設置sessionStorage?
這是我一直在努力做的事情:
import UIKit
import WebKit
class WebViewViewController: UIViewController {
@IBOutlet weak var webView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = NSURL(string: "http://example.com/index.html")
webView.stringByEvaluatingJavaScript(from: "sessionStorage.setItem('exampleKey','exampleValue');")
let request = URLRequest(url: url! as URL)
webView.loadRequest(request)
}
}
問題
然而,尋找模擬器sessionStorage的Safari中的控制檯時不包含exampleKey
。
問題
我怎樣才能加載http://example.com/index.html
之前設置的sessionStorage?由亞歷山大·拉臘提出
編輯
解決方案並不爲我工作。
import UIKit
import WebKit
class WebViewViewController: UIViewController, UIWebViewDelegate {
@IBOutlet weak var webView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = NSURL(string: "http://example.com/index.html")
let request = URLRequest(url: url! as URL)
webView.delegate = self
webView.loadRequest(request)
}
func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool {
webView.stringByEvaluatingJavaScript(from: "sessionStorage.setItem('exampleKey','exampleValue');")
return true
}
}
這是行不通的。你測試過這個解決方案嗎? – adrianp