如何在iOS wkwebview中从urlrequest获取cookie
我想在用户登录后获得会话,但cookie始终为零;如何获取它?Cookie通常存储在浏览器中的variable document.Cookie中。 您可以通过执行Javascript代码来访问它。在这种情况下,只需如何在iOS wkwebview中从urlrequest获取cookie,ios,cookies,request,Ios,Cookies,Request,我想在用户登录后获得会话,但cookie始终为零;如何获取它?Cookie通常存储在浏览器中的variable document.Cookie中。 您可以通过执行Javascript代码来访问它。在这种情况下,只需“document.cookie”即可返回cookie func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping
“document.cookie”
即可返回cookie
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
var req = navigationAction.request;
let cookie = req.value(forHTTPHeaderField: "Cookie");
print(cookie) // always nil
decisionHandler(.allow);
}
Cookie通常存储在浏览器中的variable document.Cookie中。 您可以通过执行Javascript代码来访问它。在这种情况下,只需
“document.cookie”
即可返回cookie
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
var req = navigationAction.request;
let cookie = req.value(forHTTPHeaderField: "Cookie");
print(cookie) // always nil
decisionHandler(.allow);
}
为什么不使用iOS 11之后出现的
WKWebView
API
let cookieScript = "document.cookie;"
webView.evaluateJavaScript(cookieScript) { (response, error) in
if let response = response {
print(response as! String)
}
}
一个优点是,该方法还可以跟踪HttpOnly cookies。为什么不使用iOS 11之后出现的
WKWebView
API
let cookieScript = "document.cookie;"
webView.evaluateJavaScript(cookieScript) { (response, error) in
if let response = response {
print(response as! String)
}
}
一个优点是,该方法还跟踪HttpOnly cookies。如果cookie是http only怎么办?如果cookie是http only怎么办?