IE瀏覽器緩存問題解決方法(非常嚴重)


IE瀏覽器緩存問題解決方法整理

一、IE瀏覽器緩存的內容分析:

  IE瀏覽器會緩存網頁中的GETXHR的內容,並且在IE瀏覽器中如果請求方式是get方式的話,IE瀏覽器會進行識別,如果該get請求的url是第一次請求的話,會請求項目的后台,從數據庫中獲取數據,如果該get請求的url不是第一次請求的話,那么該url就不會請求項目后台,IE瀏覽器會直接從緩存中拿到上次該url獲取的數據,無論是什么插件的get方式請求,IE瀏覽器都會這樣進行處理的;  

  這是一個非常嚴重的問題,坑死人了。。。

二、IE瀏覽器中各種插件或請求獲取的數據與數據庫的數據不同步的原因:

  各種插件或請求如果是利用get方式請求的時候,在IE瀏覽器中都會按照IE瀏覽器緩存機制進行處理的,因此會產生網頁中的數據與數據庫的數據不同步的現象;

三、解決IE瀏覽器中顯示數據與數據庫的數據不同步的方法:

  方法一:提交方式是get方式,但是在傳遞的參數中添加一個隨機數或當前時間戳的參數,從而保證每次url請求唯一性,從而解決在IE瀏覽器中從數據庫中獲取數據

  方法二:提交方式修改為post方法,這樣就不會出現這樣的問題了;

四、bootstrap-table插件實例解決過程:

  1、問題描述:bootstrap-table插件在使用IE瀏覽器打開時,使用增加、修改、刪除等功能,操作成功后,網頁中顯示的數據是操作之前的,但是數據庫中的數據已經發生了改變,網頁中的數據不能夠與數據庫數據保持一致;

  2、問題思路:該問題還是因為IE瀏覽器中對get方法請求的處理方式和IE瀏覽器中的緩存問題,具體原因見上述一和二的分析;

  3、解決方法:

  方法一:

  bootstrap-table插件提交方式是get方式,但是在傳遞的參數中添加一個隨機數或當前時間戳的參數(此參數在后台是沒有用的,只是用來保證每次請求的url唯一性);

  方法二:

  bootstrap-table插件提交方式是post方式,並且在bootstrap-table中添加一個配置信息:contentType : "application/x-www-form-urlencoded"

  通過以上兩種方法中的任意一種,都可以解決IE瀏覽器中因為緩存問題,而導致bootstrap-table插件中網頁的數據與數據庫數據不一致的問題;

  IE瀏覽器的緩存問題非常的嚴重,網上也沒有一篇完整的解決思路和文檔,特此寫下解決方法,供自己以后查看。。。

  IE瀏覽器緩存坑死了。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM