html5清除手机页面缓存文件夹,WebView自动缓存-清除缓存
iOS的Webview加載HTML時會自動緩存JS、CSS等文件,當下次加載HTML時會根據(jù)請求的緩存策略是否使用緩存本地的JS和CSS,如果本地有緩存,那么直接返回本地資源(判斷是否過期);如果沒有本地緩存則向服務器請求地址。
1、NSURLRequestCachePolicy 指定緩存邏輯。URL加載系統(tǒng)提供了一個磁盤和內(nèi)存混合的緩存,來響應網(wǎng)絡請求。
2、NSURLRequestUseProtocolCachePolicy = 0 默認緩存策略
3、NSURLRequestReloadIgnoringLocalCacheData 不使用本地緩存數(shù)據(jù)
4、NSURLRequestReloadIgnoringLocalAndRemoteCacheData 直接加載源數(shù)據(jù)
5、NSURLRequestReturnCacheDataElseLoad 指定已存的緩存數(shù)據(jù)應該用來響應請求,不管它的生命時長和過期時間。
6、NSURLRequestReturnCacheDataDontLoad 指定已存的緩存數(shù)據(jù)用來滿足請求,不管生命時長和過期時間。
1、清除緩存
//清除webView的緩存
[[NSURLCache sharedURLCache] removeAllCachedResponses];
也可以使用這個方法清除單個請求的緩存
//清除請求
[[NSURLCache sharedURLCache] removeCachedResponseForRequest:self.request];
//清除cookies
NSHTTPCookie *cookie;
NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
for (cookie in [storage cookies]) {
[storage deleteCookie:cookie];
}
2、但這種方法有時候會不起作用
之前遇到一種情況,app端加載服務器一個網(wǎng)頁,js調(diào)用http接口沒有傳參數(shù)報錯了,服務端更新之后安卓重新加載沒有問題,iOS端一直加載都會報錯,卸載重裝之后就沒問題了。
最后發(fā)現(xiàn)在沙盒的Caches目錄中找到一個WebKit的文件夾,把這個文件夾刪了也沒問題
3、在web端處理方案
方式一:引入CSS、JS文件時路徑后面拼接時間戳
方式二:引入CSS、JS文件時路徑后面拼接版本號(記得更新版本號)
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的html5清除手机页面缓存文件夹,WebView自动缓存-清除缓存的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 容器数据卷
- 下一篇: c盘所有的html文件全删,我将C盘文件