RESTful Web Services緩存

緩存是指存儲伺服器回應客戶端本身,使客戶端無須做出了對同樣的資源伺服器的請求連連。伺服器的回應有關於緩存是如何做到使客戶端緩存的回應一段時間或永遠捕捉伺服器回應資訊。

以下是其中一個伺服器回應可以具有以配置客戶端的緩存的報頭:

S.N. 消息頭和說明
1 Date
日期和創建時的資源的時間。
2 Last Modified
資源的日期和時間,它的最後修訂。
3 Cache-Control
主要頭控制緩存。
4 Expires
到期日和緩存時間
5 Age
在幾秒鐘時間,從資源伺服器獲取時。

Cache-Control頭

以下是Cache-Control頭的細節

S. N. 指令和說明
1 Public
指示資源是可緩存任何組件。
2 Private
指示資源是可緩存只有客戶端和服務器,無仲介可以緩存資源。
3 no-cache/no-store
表示資源是不可緩存
4 max-age
表示緩存有效期為max-age以秒為單位。在此之後,客戶端必須使另一個請求。
5 must-revalidate
指示伺服器來驗證資源,如果最大到期時間已經過去了。

最佳實踐

  • 始終保持靜態內容,如圖像,CSS,JavaScript的緩存,以2〜3天有效期。

  • 不要讓過期日期太長。

  • 動態內容應只能緩存幾個小時。

Best practices for Cache-Control
 

上一篇: RESTful Web服務無狀態 下一篇: RESTful Web服務安全