應(yīng)用場(chǎng)景
因?yàn)榭紤]到每個(gè) HTTP 請(qǐng)求都會(huì)帶著 Cookie 的信息挠唆,所以 Cookie 當(dāng)然是能精簡(jiǎn)就精簡(jiǎn)啦,比較常用的一個(gè)應(yīng)用場(chǎng)景就是判斷用戶是否登錄懒棉。針對(duì)登錄過的用戶嚣伐,服務(wù)器端會(huì)在他登錄時(shí)往 Cookie 中插入一段加密過的唯一辨識(shí)單一用戶的辨識(shí)碼哭廉,下次只要讀取這個(gè)值就可以判斷當(dāng)前用戶是否登錄啦怀跛。曾經(jīng)還使用 Cookie 來保存用戶在電商網(wǎng)站的購物車信息距贷,如今有了 localStorage,似乎在這個(gè)方面也可以給 Cookie 放個(gè)假了
而另一方面 localStorage 接替了 Cookie 管理購物車的工作吻谋,同時(shí)也能勝任其他一些工作忠蝗。比如HTML5游戲通常會(huì)產(chǎn)生一些本地?cái)?shù)據(jù),localStorage 也是非常適用的滨溉。如果遇到一些內(nèi)容特別多的表單什湘,為了優(yōu)化用戶體驗(yàn)长赞,我們可能要把表單頁面拆分成多個(gè)子頁面晦攒,然后按步驟引導(dǎo)用戶填寫。這時(shí)候 sessionStorage 的作用就發(fā)揮出來了得哆。
安全性的考慮
需要注意的是脯颜,不是什么數(shù)據(jù)都適合放在 Cookie、localStorage 和 sessionStorage 中的贩据。使用它們的時(shí)候栋操,需要時(shí)刻注意是否有代碼存在 XSS 注入的風(fēng)險(xiǎn)闸餐。因?yàn)橹灰蜷_控制臺(tái),你就隨意修改它們的值矾芙,也就是說如果你的網(wǎng)站中有 XSS 的風(fēng)險(xiǎn)舍沙,它們就能對(duì)你的 localStorage 肆意妄為。所以千萬不要用它們存儲(chǔ)你系統(tǒng)中的敏感數(shù)據(jù)剔宪。