cookie存儲在客戶端,伴隨著HTTP請求在瀏覽器和服務(wù)器之間傳遞。除了key-value外,cookie還有max-age,path,domain和httponly屬性。
httponly屬性標(biāo)識一個客戶端JavaScript能否操作該cookie;
max-age屬性表示緩存時間,單位為秒;
domain設(shè)置可以訪問該Cookie的域名;
path設(shè)置該domain下可以訪問該Cookie的路徑,默認(rèn)為/。
cookie優(yōu)化方案:
1、去除沒有必要的cookie,如果網(wǎng)頁不需要cookie就完全禁掉。
2、將cookie的大小減到最小。
由于cookie在訪問對應(yīng)域名下的資源時都會通過HTTP請求發(fā)送到服務(wù)器,因此,減小cookie的大小,能減小HTTP請求報文的大小,提高響應(yīng)速度。
3、設(shè)置合適的過期時間,較長的過期時間可以提高響應(yīng)速度。
給cookie添加一個過期時間,則cookie信息將存儲到硬盤上,即使瀏覽器退出Cookie還會存在。只要Cookie未被清除且還在過期時間內(nèi),該Cookie就會在訪問對應(yīng)域名時發(fā)送給服務(wù)器。
4、通過使用不同的domain減少cookie的使用。
cookie在訪問對應(yīng)域名下的資源時都會通過HTTP請求發(fā)送到服務(wù)器,但在訪問一些資源,如js,css和圖片時,大多數(shù)情況下cookie是多余的,可以使用不同的domain來存儲這些靜態(tài)資源,這樣訪問這些資源時就不會發(fā)送多余的cookie,從而提高響應(yīng)速度。