vue中LocalStorage與SessionStorage的區別與用法
前面把後臺的驗證機制梳理瞭一下,主要是Cookie、Session和Token的使用,Django:Cookie設置及跨域問題處理、Django實:Cookie搭配Session使用、Django:基於Token的驗證使用,當然這並不表示Token是最優的,還是需要根據項目需求來選擇的,也可以混合搭配使用。
今天要做的事將後臺發送過來的Token存儲到客戶端中,這裡可以存Cookie、LocalStorage、SessionStorage等地方,Cookie前面已經介紹過瞭這裡直接忽略,我們主要說說LocalStorage和SessionStorage。
什麼是LocalStorage
LocalStorage譯為“本地存儲器”,是HTML5中新增的一個存儲對象,跟Cookie一樣也是用來本地存儲來的,但是解決瞭Cookie存儲空間不足的問題(cookie每條存儲空間為4k),而localStorage瀏覽器一般支持5M,通常以鍵/值對形式的字符串進行存儲。
什麼是SessionStorage
SessionStorage譯為“會話存儲”,也是HTML5新增的一個存儲對象, 用於本地臨時存儲同一窗口的數據,在關閉窗口之後將會刪除這些數據,SessionStorage瀏覽器一般支持5M,通常以鍵/值對形式的字符串進行存儲。
LocalStorage與SessionStorage的區別
LocalStorage生命周期是永久,除非主動清除LocalStorage信息,否則這些信息將一直存放在客戶端。而SessionStorage生命周期是臨時,僅在當前會話窗口有效,關閉頁面或瀏覽器數據就會自動被清除。
LocalStorage與SessionStorage的特點
1.不同瀏覽器之間無法共享LocalStorage或SessionStorage中的數據。
2.LocalStorage和SessionStorage可以使用統一的API接口。
3.LocalStorage或SessionStorage通常以鍵/值對形式的字符串進行存儲,所以在存儲時需要對數據格式進行轉換,使用JSON.stringify方法將對象轉換成字符串,提取時用JSON.parse方法將字符串轉換成對象。
4.LocalStorage或SessionStorage是HTML5的新屬性,所以需要較新的瀏覽器才支持。
LocalStorage與SessionStorage的用法
因為LocalStorage與SessionStorage的應用一致,這裡就不多做解釋瞭,以LocalStorage為例。
LocalStorage提供瞭5個方法,分別是clear(清除LocalStorage)、getItem(獲取本地數據)、key(取下標對應鍵的值)、removeItem(刪除以保存數據)、setItem(設置保存數據)。
下面是具體的使用方法和說明,直接用localStorage.就可以帶出來對應的方法,我們隻要理解其對應的應用屬性就可以使用瞭。
這樣我們就可以使用localStorage.setItem(‘鍵’,’值’)將服務器傳過來的數據存入客戶端本地,存儲前記得將數據進行轉換。
LocalStorage與SessionStorage應用實例
下面是我實際開發中的應用,前面我通過JsonResponse向前端發送瞭JSON數據,裡面包含瞭data(用戶請求的數據)、token(服務器生成的token)和code(後臺處理的狀態碼),前端收到這些數據後對數據進行處理,判斷code返回是否成功,如果成功我們就解析數據並將數據存入本地,否則則訪問失敗。
這裡我用 localStorage和sessionStorage分別存瞭兩個數據,localStorage是自定義的,sessionStorage是從後臺獲取的,打開瀏覽器開發者工具,在Application中我們可以在Storage下面的localStorage和sessionStorage分別找到我們存儲的對應值。
到此這篇關於vue中LocalStorage與SessionStorage的區別與用法的文章就介紹到這瞭,更多相關vue LocalStorage與SessionStorage內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Vue保持用戶登錄狀態(各種token存儲方式)
- Vue的緩存方法示例詳解
- JS 中Json字符串+Cookie+localstorage
- 淺談Web Storage API的使用
- Vue項目如何保持用戶登錄狀態(localStorage+vuex刷新頁面後狀態依然保持)