首頁  >  文章  >  後端開發  >  js 設定快取與取得快取實例學習

js 設定快取與取得快取實例學習

WBOY
WBOY原創
2016-07-25 09:12:461296瀏覽

例子,js設定與取得快取。

  1. //設定快取,取得設定的緩存,鍵值對形式, name value
  2. localStorage.getItem("key"); //取得鍵的值
  3. localStorage.setItem("key", 1); //設定鍵的值
複製程式碼

解決js快取位址問題 js實作不緩存

複製代碼

不快取js的方法

  1. <script> <li>document.write("<s"+"cript type='text/javascript' src='/js/test. js?"+Math.random()+"'>"+"ipt>"); <li></script>
複製程式碼

其他的類似,只需在地址後面加上+Math.random() 註:因為Math.random() 只能在Javascript 下起作用,故只能透過Javascript的呼叫才可以

若上面改為

  1. (
複製程式碼

則無法實作不快取

js檔案不快取

每次連接的位址變化,利用js隨機數

  1. document.write(""+"ipt>");
複製程式碼

停用頁面快取的幾種方法(靜態和動態) 1.在Asp頁面首部

加入 以下是引用片段:
  1. Response.Buffer = True
  2. Response.ExpiresAbsolute = Now() - 1
  3. Response.Expires = 0 Reache. "no-cache"
  4. Response.AddHeader "Pragma", "No-Cache"
複製程式碼
2、在html程式碼中加入

複製程式碼
3、在重新呼叫原始頁面的時候在傳一個參數Href="****.asp?random()" 前兩個方法據說有時會失效,而第三種則是在跳轉時傳遞一個隨機的參數! 因為aspx的快取是與參數相關的,如果參數不同就不會使用緩存,而會重新產生頁面,每次都傳遞一個隨機的參數就可以避免使用快取。 這個僅適用於asp&asp.net 。

4、在jsp頁面實現無快取:

  1. response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
  2. response.setHeader("Pragu", "no-cache"); //HTTP 1.0
  3. response.setDateHeader ("Expires", 0); //prevents caching at the proxy server
複製程式碼

複製程式碼

這些程式碼加在
中間具體如下
  1. response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
  2. response.setHeader("Pragma","no-cache"); //HTTP 1.0
response.setDateHeader ("Expires", 0); //prevents caching at the proxy server
%>
複製程式碼

5、window.location.replace("WebForm1.aspx"); 參數就是要覆寫的頁面,replace的原理就是用目前頁面取代掉replace參數指定的頁面。 這樣可以防止使用者點選back鍵。使用的是javascript腳本,舉例如下: a.html

  1. a
b

複製程式碼

b.html
  1. b
a

複製程式碼
前4種只是清空了cache,即儲存在Temporary Internet Files資料夾中的臨時文件,而第五種則是使用跳躍頁面文件替換當前頁面文件,並沒有清空cache。 即emporary Internet Files產生了相關的暫存文件,兩者搭配使用真是清空快取。


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn