簡體   English   中英

如何緩存JSON響應?

[英]How to cache a JSON response?

我有一個用於顯示價格的JSON文件。 JSON文件僅每30分鍾在服務器端刷新一次,但是在客戶端刷新時,他只會獲得相同的版本。 有沒有一種方法可以讓JSON文件具有到期日期,然后重新下載,而不必繼續下載呢?

如果自瀏覽器為該文件在其緩存中存儲日期以來該文件未更改,則可以將服務器設置為返回304-未修改響應。 基本上,當客戶請求文檔時,它可以在請求標頭中發送“ If-Modified-Since”日期。 如果自該日期以來文件未更改,則服務器將以304-未修改響應進行響應,客戶端將改為使用緩存的版本。

將其放在通過ajax調用的php文件的頂部:

header("Cache-Control: max-age=1800");
header("Cache-Control: public", false);

這將使瀏覽器將文件緩存1800秒。

如果您使用的是jQuery,請不要忘記打開cache屬性:

$.ajax({url:"yourfile.php",cache:true})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM