1.Cache-Control的特性
- 可緩存性,包括:
- public:在HTTP請求返回的過程中,在cache-control設置了public這個值,代表這個HTTP請求返回的內容中所經過的任何路徑當中,包括一些中間的HTTP的代理服務器以及發出這個請求的客戶端瀏覽器都可以對這個返回的內容進行緩存的操作。
- private:表示發起請求的這個瀏覽器才能進行緩存的
- no-cache:每次發送請求都要去服務器驗證一下,如果服務器告訴可以使用緩存,才使用本地緩存
- 到期:
- max-age=<seconds>
- s-maxage=<seconds> 代替max-age,只有在代理服務器中才會生效
- max-stale=<seconds> 即使這個緩存已經過期了,只要在max-stale這個時間內,還可以使用過期的緩存。
- 重新驗證:
- must-revalidate:在設置了max-age這個緩存當中,如果已經過期了,必須去原服務端去重新獲取資源來驗證是否真的過期
- proxy-revalidate:與must-revalidate差不多,這個是用在緩存服務器中的
- 其它:
- no-store:本地和代理服務器都不可以進行緩存,永遠要拿新的內容
- no-transform:主要用在proxy-服務器中。告訴代理服務器不要改動返回的內容
說明:這些設置的頭,只是 一個規范,但是這個代理服務器可以完全不按照這個規范去做。
