我有一個js文件,css和圖像的列表,不需要每次從服務器加載,但是如果在文件或錯誤修復中有任何更新,只有在那段時間我想從瀏覽器緩存中替換文件,我知道沒有訪問瀏覽器緩存,但有沒有其他方法可以這樣做?我的應用程序將被特定用戶(知名人士)使用,在那裏我可以在他們的系統中安裝任何程序,任何人都可以建議我有效地這樣做?我不想通過設置'no-cache'從服務器每次加載文件。有沒有什麼辦法來清除瀏覽器緩存使用js,至少我的域相關的文件?
1
A
回答
1
不,沒有。
Javascript無權訪問緩存 - 瀏覽器不會將此信息暴露給JavaScript引擎。
3
強制瀏覽器在某些時候刷新某些文件的最有效的方法是任意的額外的查詢字符串添加到鏈接:
<script type="text/javascript" src="http://mywebsite.com/js/scripttoload.js"></script>
然後更改爲:
<script type="text/javascript" src="http://mywebsite.com/js/scripttoload.js?V=2"></script>
下一頁瀏覽器會認爲這是一個新文件。有很多其他方式與標題等,但這很好運行
4
一個常用的技巧是設置文件的緩存爲持續的年齡,以便他們不被再次請求。但是,當您希望更新它們時,可以在問號後附加一個時間戳到文件名。 EG:
<link rel="stylesheet" href="style.css?123211212"/>
每當數字發生變化,瀏覽器就認爲它是一個不同的文件並將重新下載它。如果號碼沒有改變,那麼它使用緩存版本。
0
我所做的是,作爲構建過程的一部分,將所有靜態引用的文件重命名爲涉及其md5散列的內容。然後我設置標題,以便在最大可能的時間內緩存它們。只要他們改變了,他們就會得到一個新的名字,所以不存在任何問題。
相關問題
- 1. 有什麼辦法來檢測瀏覽器緩存是否被清除
- 2. 有沒有辦法清除我的網頁的用戶瀏覽器,或說不使用緩存?
- 3. 有沒有辦法告訴瀏覽器在加載頁面時清除緩存?
- 4. 使用Selenium清除瀏覽器緩存
- 5. 是否有可能清除使用JavaScript的瀏覽器緩存?
- 6. 有沒有辦法使用javascript清除緩存和Cookie?
- 7. 有沒有辦法強制瀏覽器不緩存?
- 8. 有沒有辦法清除IBM MobileFirst Platform服務器緩存?
- 9. 谷歌瀏覽器中沒有清除緩存
- 10. 有沒有辦法檢測使用PHP的文本瀏覽器?
- 11. 如何清除瀏覽器的緩存?
- 12. 有沒有什麼辦法阻止瀏覽器頁面滾動瀏覽器
- 13. 有沒有什麼辦法來檢查在sinatra的瀏覽器JavaScript支持?
- 14. 有沒有辦法從緩存清單文件
- 15. 無法清除緩存從我的瀏覽器在PHP
- 16. 有什麼辦法來檢查瀏覽器中的重寫URL
- 17. 瀏覽器緩存 - 不理解緩存相關頭文件
- 18. Android:有沒有什麼辦法使用瀏覽器或瀏覽器應用程序獲取設備的IMEI
- 19. 有沒有辦法改變使用JavaScript瀏覽區域設置?
- 20. 如何清除IMacro瀏覽器的所有緩存?
- 21. JS文件和瀏覽器緩存
- 22. 使用查詢字符串方法清除瀏覽器緩存
- 23. 有沒有更改方式來清除沒有drop_caches的緩存?
- 24. 清除瀏覽器緩存後,swf文件保存在哪裏?
- 25. 有沒有辦法使用.htaccess緩存來自不同域的圖像
- 26. 如何清除瀏覽器緩存?
- 27. .htaccess - 如何清除瀏覽器緩存?
- 28. 清除CSS和JavaScript瀏覽器緩存
- 29. 重定向瀏覽器清除緩存
- 30. Delphi Chromium Embedded - 清除瀏覽器緩存