cookies、sessionStorage和localStorage的區別
阿新 • • 發佈:2022-03-18
cookies、sessionStorage和localStorage的區別
對比
特性 | Cookie | LocalStorage | SessionStorage |
---|---|---|---|
資料的生命週期 | 可設定失效時間,預設是關閉瀏覽器後失效 | 除非被清除,否則永久儲存 | 僅在當前會話下有效,關閉頁面或者瀏覽器後被清除 |
存放資料大小 | 約4KB | 約5MB | 約5MB |
與伺服器端通訊 | 每次都會攜帶在HTTP頭中,如果使用cookie儲存過多資料會帶來效能問題 | 僅在瀏覽器)中儲存,不參與和伺服器的通訊 | 僅在瀏覽器)中儲存,不參與和伺服器的通訊 |
易用性 | 需要程式設計師自己封裝,源生的Cookie介面不友好 | 源生介面可以接受,亦可再次封裝來對Object和Array有更好的支援 | 源生介面可以接受,亦可再次封裝來對Object和Array有更好的支援 |
Cookie應用場景
考慮到每個 HTTP 請求都會帶著 Cookie 的資訊,所以 Cookie 當然是能精簡就精簡!
Cookie比較常用的一個應用場景就是判斷使用者是否登入
針對登入過的使用者,伺服器端會在他登入時往 Cookie 中加入一段加密過的唯一辨識單一使用者的辨識碼,下次只要讀取這個值就可以判斷當前使用者是否登入了
LocalStorage應用場景
LocalStorage 接替了 Cookie 管理電商網站購物車的工作
LocalStorage 也用來儲存HTML5遊戲產生的一些本地資料
SessionStorage應用場景
SessionStorage 一般用來處理一些內容特別多的表單,可以把表單頁面拆分成多個子頁面,然後按步驟引導使用者填寫