據(jù)我對cookie誕生背景的了解,cookie是由網(wǎng)景公司創(chuàng)建的,目的就是將用戶的數(shù)據(jù)儲存在客戶端上。伴隨的HTML5的出現(xiàn),現(xiàn)在又有另外一個解決數(shù)據(jù)離線儲存的方案,就是HTML5中的Web storage,其中兩個重要對象sessionStorage和localStorage可以解決瀏覽器sessions和長期儲存數(shù)據(jù)的目的,并且兼容性還不錯,IE8+以上瀏覽器都支持。
那我們直接學(xué)習(xí)Web storage不就可以了?個人認為,這不是一個很好的學(xué)習(xí)方法。Web Storage的出現(xiàn)主要還是因為cookie的一些小毛病不能夠滿足前端工程師日常開發(fā)而被加入到HTML5中作為新的API的。本質(zhì)上說,localStorage和sessionStorage實現(xiàn)的本質(zhì)與cookie是一樣的。所以在接觸之前,先熟悉并且掌握cookie對于Web storage的學(xué)習(xí)還有很大的幫助。
這篇文章會涉及的內(nèi)容與技術(shù):
module bundler:webpack
javascirpt如何實現(xiàn)讀取,寫入,刪除Cookie
js-cookie實現(xiàn)讀取,寫入,刪除Cookie
cookie定義
cookie其實就是服務(wù)器保存在瀏覽器的一小段文本信息。怎么保存呢?瀏覽器在向服務(wù)器發(fā)送一個http請求時,會在發(fā)送請求的首部字段中添加Cookie字段,并且附上相應(yīng)的key,value。服務(wù)器接收到請求并且正確返回響應(yīng)的時候,會在響應(yīng)的頭部字段中添加Set-cookie字段。這時候就完成了一次數(shù)據(jù)儲存的操作。當我們關(guān)閉瀏覽器并且再次打開的時候,相應(yīng)需要存儲的信息就會在expires指定的期限內(nèi)存儲下來。
簡單的說,就是:
當用戶訪問web頁面時,他的記錄可以保存在cookie中。
在用戶下一次訪問同一頁面時,可