首頁>Club>
3
回覆列表
  • 1 # 使用者4569318211919

    你的問題裡面包含幾個方面的內容.1. 瀏覽器的上一頁是怎麼實現的瀏覽器儲存了當前視窗的訪問歷史記錄, 簡單來說"上一步"就找找到這個記錄裡在當前頁面的上一條, 然後重新開啟這個地址, 如果本地有快取則從本地快取顯示, 否則重新訪問這個地址.2. 不允許返回上一頁不允許返回有幾種,第一種是返回顯示頁面過期或者需要重新提交等等, 第二種是在客戶端提示資訊組織回退,第三種是POST的請求瀏覽器預設會提示在服務端阻止, 可以用一個類似事件鏈的方式來標記使用者做到哪一步, 不允許回退或前進的情況就強行將使用者跳轉到某處.在客戶端實現, 頁面要關閉的時候是有關閉事件的,可以在這個事件觸發時寫想有的邏輯進行處理, 如果使用者取消回退, 則把event給cancel了.瀏覽器這個只要是POST來的,瀏覽器會自動處理.3.瀏覽器快取瀏覽器訪問過且允許快取的頁面, 會把頁面/css/圖片等資源放到本地, 以IE來說, IE會把這類檔案放到臨時目錄(開啟IE的臨時目錄可以看到訪問過的各類資源).可以不可以快取,具體來說跟各瀏覽器的實現及HTTP協議有關.幾種常見的快取策略有:根據過期時間,根據ETAG,NO-CACHE(header裡的CACHE-CONTROL)等等.根據絕對過期時間, 在未過期前, 瀏覽器一般不會再次請求遠端資源,直接使用本地快取;ETAG是對內容進行一個類似簽名的操作,然後服務端在客戶端第一次訪問時會講此值傳送給客戶端,客戶端下次請求時,會將此TAG傳送到服務端,服務端對比此ETAG,發現服務端沒新的變化時, 會返回304(NOT MODIFIED).而不會發送正文;如果有變化,則會返回200,並返回正文.NO-CACHE就是不允許快取,客戶端每次都要從服務端獲取新資訊, 有些瀏覽器/中間代理服務對此支援不夠好, 所以要實現不快取,可以考慮加上一個已經過期的絕對過期時間(比如將絕對過期時間設定為2014/9/1).

  • 中秋節和大豐收的關聯?
  • 諸葛亮最大的政治錯誤是什麼?對於他犯的這個錯誤,你怎麼看?