標籤:崩潰 xxx 串連 ima 用戶端 版本 nbsp 更改 style
在Web應用程式大行天下的今天,我們程式員的工作大都基於B/S架構,B/S架構的優勢就在於可以及時(甚至隨時)更新頁面以及後台邏輯,而不用通知客戶去手動更新用戶端。在這種環境下,是不是B/S架構的軟體就真的沒有升級的問題了呢?
現如今,瀏覽器大戰下,各個瀏覽器也是拼了命的提高效能,升級JS解析引擎,更好的處理瀏覽器的頁面緩衝,讓使用者的瀏覽體驗更快,佔用更小的PC資源。那麼,問題就出現在JS和CSS緩衝,甚至頁面緩衝上。至於瀏覽器對頁面的緩衝,我們一般通過在服務端發送頁面的時候設定頁面的生存期,一般幾個小時就能緩解很大的伺服器壓力,並且,對瀏覽者來講,本地頁面晚更新幾個小時可能問題也不大。但,問題是,如果頁面發生了更新,但是該頁面連結的JS和CSS檔案卻被瀏覽器緩衝下來,只有待瀏覽器重啟後才能被刪除,甚至有些瀏覽器重啟後也不主動刪除JS和CSS的快取檔案。這樣頁面與JS和CSS檔案就可能發生脫節了,從而出現某種異常現象,甚至頁面崩潰。更坑爹的現象是,現在使用者為了儲存自己的工作(娛樂)狀態,根本就長時間不關機,當然也不關閉瀏覽器。從而使得該問題變得更加嚴重。
這裡提供一種簡單並且常用的JS和CSS的緩衝解決方案:
注意上面的每個JS檔案和CSS檔案都加上了一個時間戳記作為版本號碼。
即
<script type=”text/javascript” src=”{JS檔案串連地址}?version=XXXXXXXX”></script>
或
<link rel=”stylesheet” type=”text/css” href=”{CSS檔案串連地址}?version=XXXXXXXX”>
因為瀏覽器緩衝的時候是以URL作為儲存單位(還記得POST頁面的返回按鈕的問題吧?),
從而當每次首頁的檔案發生更新的時候只需要更改上面的版本號碼,就能提醒瀏覽器重新下載該檔案了。
關於更新發布CSS和JS檔案的緩衝問題