Closed kwongfung closed 4 years ago
你是什么场景下需要使用 copyNSHTTPCookieStorageToWKHTTPCookieStoreForWebViewOniOS11 这个 api 呢?有具体的 demo 可以看下吗?
if (@available(iOS 11.0, *)) {
NSArray *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies];
WKHTTPCookieStore *cookieStroe = _webView.configuration.websiteDataStore.httpCookieStore;
for (NSHTTPCookie *cookie in cookies) {
[cookieStroe setCookie:cookie completionHandler:^{
if ([[cookies lastObject] isEqual:cookie]) {
completion ? completion() : nil;
return;
}
}];
}
}
else {
WKUserContentController *ucc = _webView.configuration.userContentController;
WKUserScript *cookieScript = [[WKUserScript alloc] initWithSource:[HybridView ajaxCookieScripts] injectionTime:WKUserScriptInjectionTimeAtDocumentStart forMainFrameOnly:NO];
[ucc addUserScript:cookieScript];
completion ? completion() : nil;
}
从线上日志收集看到iOS 11有概率性的setCookie不成功,iOS 11以下是正常的。但测试环境没办法复现出来。
嗯,我这边也没法重现出来,不过这个方法,目前这个库也没有使用到,只是提供了这个方法。另外实际场景中,应该也是不需要用到这个方法的,第一次请求和ajax请求已经基本覆盖了cookie设置了,所以不是太清楚你的实际场景是什么样的
ok , thank u all the same
copyNSHTTPCookieStorageToWKHTTPCookieStoreForWebViewOniOS11 在iOS 13.1.3及以上版本document.cookie获取不到Native设置的cookie。请问有谁遇到这个问题么?