3
A
回答
8
使用jQuery,你可能會想明確地添加了If-Modified-Since的與ifModified
選項,該選項默認是假頭:
$.ajax({
...
ifModified: true,
...
});
還有一個cache
選項,你需要如果您的dataType爲jsonp
或script
,則強制爲true。其他dataType默認爲true。
有關這些選項的說明,請參閱jQuery.ajax()
docs。
1
在http響應中設置適當的標頭,例如Expires標頭和Cache-control指令。
詳情請參閱here,但簡而言之,你要設置標題來表示:
- 該資源應該被緩存一定時間(expires頭)
- 資源是可緩存(Cache-control:public header)
或者,您可能希望讓用戶請求該文件,但發回一個「未修改的resposne」,這可以節省重新下載正文(對於大文件)。在這種情況下,你應該使用響應頭,表示
- 當資源的最後修改(最後修改時間標題),它允許客戶端告訴服務器版本幾歲
- 的E-標籤該文件是一種散列碼,可以讓服務器知道客戶端的版本。請注意電子標籤是如何生成的......在某些服務器上,etags會打破負載平衡。
這兩種方法將讓客戶端緩存響應,並減少響應被重新下載的次數。另外,我喜歡避免在緩存響應中設置Cookie,因爲某些緩存不會緩存具有Cookie的響應,並且某些緩存會緩存包含Cookie的響應,這兩者都可能不合適。
1
我想所有的AJAX響應都被緩存,除非你指定不緩存。您還可以查看jQuery Cache(?)。
2
GET請求可能被瀏覽器緩存(取決於瀏覽器緩存大小等),但POST不會被緩存。
問候。
相關問題
- 1. 防止緩存ajax響應
- 2. JSF 2 AJAX響應緩存
- 3. 正在緩存AJAX響應
- 4. jQuery ajax緩存響應
- 5. 如何在Firefox中保存ajax響應
- 6. 如何在Laravel中保存AJAX響應
- 7. 可緩存響應認證
- 8. 確保響應不緩存
- 9. 如何緩存JSON響應?
- 10. 如何緩存expressjs響應
- 11. 如何將ajax post響應保存到數據庫中?
- 12. Ajax和清理緩存響應IE8
- 13. Android WebView緩存脫機AJAX響應
- 14. GWT Internet Explorer緩存AJAX響應
- 15. 使用DOJO時緩存AJAX響應
- 16. 緩存Ajax響應不工作
- 17. 在Jquery中緩存AJAX POST響應
- 18. 緩存響應
- 19. 如何實現緩存AJAX響應?像在Internet Explorer中一樣
- 20. 如何在Ajax中緩存響應以避免http調用
- 21. 如何讓瀏覽器不要緩存ajax響應
- 22. 在數組中保存AJAX響應
- 23. AJAX HTTP POST請求 - 保存JSON響應
- 24. IE嘗試保存Ajax響應文件
- 25. 如何關閉遠程jQuery驗證中的響應緩存?
- 26. 緩存JSON響應
- 27. GAE&響應緩存
- 28. 緩存HTTPS響應
- 29. 緩存XML響應
- 30. Retrofit響應緩存