wkwebview清空html缓存,清除WKWebView cookies的方法
时间: 2023-08-14 20:03:15 浏览: 146
清空WKWebView的缓存和cookie有以下两种方法:
1.清空缓存:
```
if #available(iOS 9.0, *) {
let websiteDataTypes = NSSet(array: [WKWebsiteDataTypeDiskCache, WKWebsiteDataTypeMemoryCache])
let date = NSDate(timeIntervalSince1970: 0)
WKWebsiteDataStore.default().removeData(ofTypes: websiteDataTypes as! Set<String>, modifiedSince: date as Date, completionHandler:{ })
} else {
let libraryPath = NSSearchPathForDirectoriesInDomains(.libraryDirectory, .userDomainMask, true)[0]
let cookiesFolderPath = "\(libraryPath)/Cookies"
try? FileManager.default.removeItem(atPath: cookiesFolderPath)
}
```
2.清除cookie:
```
if #available(iOS 9.0, *) {
let dataStore = WKWebsiteDataStore.default()
let date = Date(timeIntervalSinceReferenceDate: 0)
dataStore.httpCookieStore.getAllCookies { cookies in
cookies.forEach { cookie in
dataStore.httpCookieStore.delete(cookie, completionHandler: nil)
}
}
} else {
if let cookies = HTTPCookieStorage.shared.cookies {
for cookie in cookies {
HTTPCookieStorage.shared.deleteCookie(cookie)
}
}
}
```