什么是localStorage
對瀏覽器來說,使用 Web Storage 存儲鍵值對比存儲 Cookie 方式更直觀,而且容量更大,它包含兩種:localStorage 和 sessionStorage
1.sessionStorage(臨時存儲) :為每一個數(shù)據(jù)源維持一個存儲區(qū)域,在瀏覽器打開期間存在,包括頁面重新加載
2.localStorage(長期存儲) :與 sessionStorage 一樣,但是瀏覽器關閉后,數(shù)據(jù)依然會一直存在
所以上次使用cookie的時候就遇到了一個坑,設置后馬上訪問session會獲取不到,蛋疼,還需要刷新一下,原因是:
當我們首次訪問設置Cookie的頁面時,服務器會把設置的Cookie值通過響應頭發(fā)送過來,告訴瀏覽器將cookie存儲的本地相應文件夾中(注意:第一次訪問時本地還沒有存儲Cookie,所以此時獲取不到值);
當?shù)诙卧L問(或在進行cookie設置后,過期前所有的訪問)時,請求頭信息你中都會把Cookie值攜帶。(百度到的,暫時還沒理解透徹,先搬過來).
vue中實現(xiàn)本地儲存的方法:localStorage,在HTML5中,新加入了一個localStorage特性,這個特性主要是用來作為本地存儲來使用的,解決了cookie存儲空間不足的問題(cookie中每條cookie的存儲空間為4k),localStorage中一般瀏覽器支持的是5M大小,這個在不同的瀏覽器中l(wèi)ocalStorage會有所不同。
(1).儲存數(shù)據(jù)
localStorage.setItem('accessToken', 'Bearer ' + response.data.result.accessToken)
(2).取出數(shù)據(jù)
localStorage.getItem('accessToken')
(3).刪除儲存數(shù)據(jù)
localStorage.removeItem('accessToken')
(4).更改數(shù)據(jù)
localStorage.setItem('accessToken', '更改后' + response.data.result.accessToken)
使用時有兩點需要注意過的地方:
. localStorage在瀏覽器的隱私模式下面是不可讀取的。
. localStorage本質(zhì)上是對字符串的讀取,有json格式時需要JSON.stringify()轉(zhuǎn)化為字符串。
. localStorage不能被爬蟲抓取到
注意點
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com