瀏覽器快取url請求

2021-07-16 22:19:07 字數 1349 閱讀 5666

最近遇到瀏覽器快取url的問題,google了一把,學到不少東西,結合網上其他人文章拼湊一篇,供大家交流。 

一 防止url被瀏覽器快取

根據 http 規範,get 用於資訊獲取,而且應該是冪等的。也就是說,當使用相同的url重複get請求會返回預期的相同結果時,get方法才是適用的。當對乙個請求有***的時候(例如,提交資料註冊新使用者時),應該使用post請求而不是get。 所以瀏覽器會對get請求做快取處理。

這個我經常遇到,註冊後去重新整理會重新提交表單

解決辦法: 

1. get請求url後加隨機數,讓伺服器認為不是相同的請求。 

例 「 + new date().gettime()

2. 在ajax傳送請求前加上 xmlhttprequest.setrequestheader(「if-modified-since」,」0″)

3. 在ajax傳送請求前加上 xmlhttprequest.setrequestheader(「cache-control」,」no-cache」);

4. 服務端響應請求時加 header(「cache-control: no-cache, must-revalidate」); (php)

5. 使用post代替get,瀏覽器不會對post做快取

二.防止jsp頁面內容被快取:

防止jsp頁面快取為了防止瀏覽器快取當前訪問的jsp動態頁面,可以採用如下的方式進行設定: 

<% 

// 將過期日期設定為乙個過去時間

response.setheader("expires", "sat, 6 may 1995 12:00:00 gmt");

// 設定 http/1.1 no-cache 頭

response.setheader("cache-control", "no-store,no-cache,must-revalidate");

// 設定 ie 擴充套件 http/1.1 no-cache headers, 使用者自己新增

response.addheader("cache-control", "post-check=0, pre-check=0");

// 設定標準 http/1.0 no-cache header.

response.setheader("pragma", "no-cache");

%>

三.防止html頁面被快取(jsp也適用)

禁止客戶端快取要在中加入類似如下內容:

瀏覽器快取url請求

一 防止url被瀏覽器快取 根據 http 規範,get 用於資訊獲取,而且應該是冪等的。也就是說,當使用相同的url重複get請求會返回預期的相同結果時,get方法才是適用的。當對乙個請求有 的時候 例如,提交資料註冊新使用者時 應該使用post請求而不是get。所以瀏覽器會對get請求做快取處理...

Ajax請求與瀏覽器快取

在現代web應用程式中,前端 充斥著大量的ajax請求,如果對於ajax請求可以使用瀏覽器快取,那麼可以顯著地減少網路請求,提高程式響應速度。1.ajax request 使用jquery框架可以很方便的進行ajax請求,示例 如下 1 ajax 7 非常簡單,注意其中的第4行 cache true...

url 瀏覽器請求響應過程分析

https hypertext transfer protocol secure 安全超文字傳輸協議 通過主機名,最終得到該主機名對應的 ip 位址的過程叫做網域名稱解析 或主機名解析 瀏覽器快取 瀏覽器會按照一定的頻率快取 dns 記錄。作業系統快取 如果瀏覽器快取中找不到需要的 dns 記錄,那...