簡體   English   中英

我可以用Javascript按鈕強制瀏覽器忽略緩存嗎?

[英]Can I make a Javascript button force the browser to ignore cache?

我知道有很多關於此的內容,但是我找不到適合我情況的解決方案。 我跟蹤別人的asp.net代碼。 我們有大量的由我們的網站生成的html和xml文件,用戶可以看到。 在一個地方,動態生成以加載這些頁面之一的鏈接實際上是一種微型形式,使瀏覽器認為數據正在提交並且正在尋找“新的”東西。 但是另一個是按鈕,該按鈕具有使用JavaScript函數在新窗口中打開頁面的,在vb代碼中生成的鏈接。 我嘗試過模擬結尾處帶有“?submit = .....”的表單提交,但是它不起作用。

tl; dr哪些JavaScript函數可以打開頁面並告訴瀏覽器獲取最新版本,而忽略緩存?

在JavaScript中,我認為防止緩存的唯一方法是修改url。 一種技巧是使用當前日期作為時間戳:

url = url + "?_ts="+new Date().getTime();

(當然,如果您的網址已經包含一個查詢字符串,則用&替換?)

沒有JavaScript可以滿足您的需求。 如果需要新版本,最簡單的方法是在URL的查詢字符串中添加時間戳。

<script type="text/javascript" src="/js/file?cacheBuster=<?= DateTime.Now ?>" > </script>

為了更好地控制,您可以將構建版本用作cacheBuster參數,這樣就不必每次都請求新文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM