轉載自:https://www.cnblogs.com/mafengzi/p/10464910.html
假設有一個js檔案(以jquery為例),在服務器上的URL地址為:../js/jquery.js ,
當某天jquery版本更新了,用最新版的jquery檔案覆寫了原來舊版的jquery檔案,
這時,在打開參考了此js檔案的網頁時,有可能參考的還是舊版,這是因為瀏覽器有快取,它快取了舊版的jquery檔案,
瀏覽器快取檔案是以完整的URL來快取的,也就是說,當瀏覽器遇到一個與之前完全一致的URL請求時,就有可能使用之前快取下來的檔案,而不是向服務器去請求檔案,當然,快取是有時效的,超過了一定的時間后,快取將會消失,
既然是以完整的URL來快取檔案的,那么我們就可以使用不同的檔案名來訪問更新后的檔案,
一種解決方法是,將版本號寫在檔案名里,比如,可將以上的jquery.js的檔案名改為 jquery-3.3.0.js,其中,3.3.0就是jquery的版本號,在前端參考時,就這樣寫:
<script src="https://www.cnblogs.com/html5study-1/js/jquery-3.3.0.js"></script>
當某天jquery的版本更新為3.3.1了,我們就將檔案名修改為jquery-3.3.1,前端參考的代號同時修改為:
<script src="https://www.cnblogs.com/html5study-1/js/jquery-3.3.1.js"></script>
另一種解決方法是,不修改檔案名,而是將版本號放在URL的query引數里,比如這樣寫:
<script src="https://www.cnblogs.com/html5study-1/js/jquery.js?ver=3.3.0"></script>
其中ver=3.3.0就是版本號,當jquery的版本號更新為3.3.1之后,就改寫為這樣:
<script src="https://www.cnblogs.com/html5study-1/js/jquery.js?ver=3.3.1"></script>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/167485.html
標籤:JavaScript
上一篇:資料結構與演算法之緒論
