Я действительно думаю, что она может сохранить кэшированную информацию, когда вы закрываете UIWebView
.Я попытался удалить UIWebView
из моего UIViewController
, выпустить его, а затем создать новый.Новый точно запомнил, где я находился, когда вернулся к адресу, не загружая все заново (он вспомнил, что мой предыдущий UIWebView
был зарегистрирован).
Итак, пара предложений:
[[NSURLCache sharedURLCache] removeCachedResponseForRequest:NSURLRequest];
Это удалит кэшированный ответ для конкретного запроса.Существует также вызов, который удалит все кэшированные ответы на все запросы, запущенные на UIWebView
:
[[NSURLCache sharedURLCache] removeAllCachedResponses];
После этого вы можете попробовать удалить любые связанные куки с UIWebView
:
for(NSHTTPCookie *cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]) {
if([[cookie domain] isEqualToString:someNSStringUrlDomain]) {
[[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie];
}
}
Swift 3:
// Remove all cache
URLCache.shared.removeAllCachedResponses()
// Delete any associated cookies
if let cookies = HTTPCookieStorage.shared.cookies {
for cookie in cookies {
HTTPCookieStorage.shared.deleteCookie(cookie)
}
}