2010-04-23 90 views
3

如果我使用history.back()按鈕按下然後會發生什麼?html緩存歷史回

html內容將從瀏覽器或緩存和瀏覽器的本地歷史顯示不要求 到服務器?

瀏覽器請求,服務器基於URL駐留在瀏覽器的歷史?

回答

0

這是依賴於瀏覽器。

history.back()按鈕的行爲取決於瀏覽器製造商。

3

在JavaScript中調用「history.back()」與在瀏覽器的用戶界面中點擊後退按鈕相同(但是,如果當前查看的位置包含框架和已導航的框架,可能會略有不同'迂腐)。

至於如果結果來自服務器或「緩存」:它取決於用戶代理(瀏覽器)。該規範(RFC 2616 13.13節,http://256stuff.com/gray/docs/rfc2616/13.html#13.13)說:

歷史機制和緩存是 不同。特別是歷史記錄
機制不應該試圖顯示資源當前狀態的語義透明視圖 。相反, 歷史記錄機制旨在顯示
正是用戶在檢索資源時在時間 處看到的內容。

但是,用戶代理執行質量不同。例如,Mozilla/Firefox的相關元錯誤可以在https://bugzilla.mozilla.org/show_bug.cgi?id=288462

如果您嘗試「返回」的頁面具有合適的緩存標頭,它將從緩存而不是從服務器獲取。