1.Cache
Cache-Control: public , max-age=3600
設(shè)置上面的字段,一個小時內(nèi)緩存.
- 如果這一個小時內(nèi)資源變更了怎么辦?
1.URL修改 , 每次改動修改查詢參數(shù)
例如:
?version=1 改成 ?version=2
- 網(wǎng)頁的一個請求不會緩存 || 網(wǎng)頁請求頭包含Cache-Control , 此時不接受響應(yīng)的Cache-Control
2.Expires
Expires: Fri, 11 Jun 2021 11:33:01 GMT
Cache-Control相比Expires
- Cache-Control不會受本地時間影響
3.ETag
ETag有一點(diǎn)像cookie
服務(wù)器會通過某種算法耕赘,給資源計(jì)算得出一個唯一標(biāo)志符(比如md5標(biāo)志), 服務(wù)器把資源響應(yīng)給客戶端的時候 , 會帶上這個唯一標(biāo)識符. 客戶端會保存該標(biāo)識符 , 下一次的請求就會帶上它 , 并對比和服務(wù)器此時的標(biāo)識符是否一致.
- 如果不匹配 , 將返回新的資源
- 如果匹配 , 就使用當(dāng)前緩存
Cookie
- Cookie 會根據(jù)從服務(wù)器端發(fā)送的響應(yīng)報(bào)文內(nèi)的一個叫做 Set-Cookie
的首部字段信息, 通知客戶端保存 Cookie - 第二次客戶端請求服務(wù)器會帶上Cookie , 服務(wù)器就知道當(dāng)前是哪一個用戶
Session
- 用uuid保證每一個用戶有一個ID , 并設(shè)置到cookie
- 這些都放到session里
- session儲存服務(wù)器端
- 用戶的重要信息用session相對安全