2011-10-26 274 views
4

我有我的網頁使用數據JavaScript。 所有的javascript都被緩存。 當我部署我的應用程序的新版本時,用戶有問題,因爲瀏覽器繼續使用舊的JavaScript而不是新的JavaScript(用於緩存)。HTML頁面重新加載 - 模擬CTRL + F5

它可以模擬,頁面加載時,將FULL重裝所有頁面,包括JavaScript和CSS文件(用於緩存完全重裝)?

謝謝!

托馬索

回答

3

以下meta標籤的行添加到您的標題:

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> 
+0

?我認爲你提出的解決方案是Asp.NET: -/ – Andrea

+0

那就是爲什麼我編輯它 – SShebly

+0

看來我不能把我的downvote帶走:-( – Andrea

0

使用這個代碼在塊

<META HTTP-EQUIV='Pragma' CONTENT='no-cache'"> 
<META HTTP-EQUIV="Expires" CONTENT="-1"> 

,或者使用任何的隨機數在URL的結尾。

我可以看到,你可以做的是每次在你的JavaScript文件的引用中添加一個隨機數。就像下面的代碼:

jsfilename.js?Math.random() 

然後你的js文件不能通過瀏覽器緩存。

如果仍無法正常工作,跟進

http://verens.com/2008/04/09/javascript-cache-problem-solved/

0

你就不應該使用meta標籤建議,因爲他們將停用整個緩存,而不是清理它的更改文件。

我建議您爲文件的路徑添加一些版本唯一值,並且每次部署新更改時只更改一次,而不是隨每個頁面加載更改的隨機數。

你的問題不能告訴,但如果你使用ASP.NET,我建議你看看像SquishIt這樣的庫。它會縮小JavaScript和CSS,並在文件更改爲使緩存版本無效時附加新的唯一(散列)值。

相關問題