我有一個頁面,它有一些可編輯的功能,它們在編輯時通過Ajax進行更新。有些值存儲在cookie中,以便在加載頁面時加載它們。如果用戶進行了更改,然後轉到其他頁面並單擊後退按鈕返回,則原始頁面將從緩存中加載而沒有新值。如果用戶刷新頁面,則會從Cookie重新加載更改,並顯示正確的值。當頁面被動態修改時,我可以使緩存無效嗎?我希望能夠利用瀏覽器緩存,所以我不希望讓頁面始終使瀏覽器緩存無效,只要我能幫助它。任何建議表示讚賞。如何通過Ajax修改頁面時使緩存失效?
3
A
回答
0
您需要在HTTP響應中設置緩存標頭。
取決於你的技術,你可以做的是,在網絡服務器(例如,基於相關網址),或在你的代碼(如使用設置你的框架或一些API調用的頭)。
具體做法是:
no-cache
expires
你想要的人。
1
您可以首先通過Ajax加載數據。
$(document).ready(function(){
$.get("your_ajax_url");
});
然後當你點擊後退按鈕在Ajax調用重複和在服務器端發送與正確設置緩存或Etag頭的HTTP響應。
0
,你可以這樣寫
$.ajax(
{
url: 'Serverpage name'
cache: false,
type: 'POST',
success: function(msg)
{
});
});
這裏設置緩存:假,將不設置任何緩存。
相關問題
- 1. Django:通過管理面板更改數據時自動使緩存失效?
- 2. 使用ajax修改頁面時出現問題,瀏覽器將未修改的頁面保留在緩存中
- 3. 通過JavaScript使頁失效
- 4. 頁面在文件夾更改時如何緩存並過期?
- 5. 軌頁面緩存,AJAX
- 6. Wicket頁面的ListView LoadableDetachableModel通過AJAX調用進行修改。頁面不重畫
- 7. 通過頁面緩存畫布
- 8. 緩存失效,同時通過WeakHashMap中從WeakHashMap中獲取
- 9. 通過部分密鑰使Guava緩存失效
- 10. 可以通過修改頁面表來移動內存頁面嗎?
- 11. 如何通過ajax更改wordpress頁面鏈接?
- 12. 當緩存的文件發生變化時如何使緩存失效
- 13. 如何使用AngularJS RouteProvider緩存頁面?
- 14. Intersystems緩存 - 使用緩存服務器頁面(Intersystems)通過javascript調用ASHX
- 15. 如何通過rSyslog緩存有效地使用iNotify?
- 16. 如何設置緩存失效日期
- 17. 強制Ajax內容的頁面緩存
- 18. 緩存頁面AJAX不工作
- 19. 如何通過Ajax加載頁面時刪除頁面標題集?
- 20. 如何使用$ .ajax()保存頁面
- 21. 如何獲得不受瀏覽器緩存影響的頁面修改日期?
- 22. 通過RStudio使用XeLaTeX fontspec包時,knitr緩存失敗
- 23. 頁面從asp.net緩存中消失
- 24. 通過AJAX修改數據庫值
- 25. 緩存頁面
- 26. Safari緩存頁面過多,如何使用rails添加過期頁眉
- 27. 如何使用ajax通過servlet重定向到成功頁面?
- 28. 如何使用fancybox通過ajax調用頁面?
- 29. 使用session_start()時varnish緩存不緩存PHP頁面
- 30. 使用輸出緩存同時編程緩存一堆頁面
感謝您的迴應傑森。 我可以通過設置標題來解決這個問題,這樣頁面就不會被瀏覽器緩存,但大部分時間我們都希望允許瀏覽器緩存發生。只有在通過Ajax更改內容的情況下,我們纔想使頁面的瀏覽器緩存無效。除非重新加載頁面,否則Ajax調用不會更新瀏覽器緩存,因此如果您離開頁面並通過瀏覽器返回按鈕返回,則不會顯示更改。 再次感謝 – Andre 2009-10-28 17:55:01