防止瀏覽器快取 AJAX 呼叫結果
快取 AJAX 呼叫結果可能會在處理動態內容時帶來挑戰。為了克服這個問題,我們探索了防止瀏覽器快取的替代方法。
利用 jQuery 的快取選項
jQuery 提供了一個簡單的解決方案來停用所有未來 AJAX 請求的快取。透過使用$.ajaxSetup 函數,您可以將快取選項指定為false,從而防止快取任何後續AJAX 呼叫:
$.ajaxSetup({ cache: false });
隨機查詢字串的替代
雖然將唯一的字串附加到QueryString 可以防止緩存,但這可能不是最理想的方法。相反,jQuery 的時間戳方法可以產生一個唯一的時間戳附加到請求URL,確保結果不被快取:
$.ajax({ url: 'some.php', method: 'GET', data: { timestamp: $.now() } });
建立自訂標頭
另一個選項是為請求設定自訂標頭以防止快取。例如,使用下列標頭將指示瀏覽器不要快取回應:
cache-control: no-cache, no-store pragma: no-cache
HTTP 狀態碼
特定的HTTP 狀態碼也可用於指示不應快取資源。將 Cache-Control 標頭設定為 max-age=0 或 no-store 將阻止快取。
跨域資源共享 (CORS)
當 AJAX 請求時跨域時,CORS 可能會幹擾快取行為。如果您在跨來源請求中遇到快取問題,請考慮使用上述的 Cache-Control 標頭或探索伺服器的 CORS 相關設定。
以上是如何防止瀏覽器快取AJAX呼叫結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!