下面我們給大家介紹一下HTML5中Localstorage吧!前幾天在老項目中發現有對cookie的操作覺得很奇怪,咨詢下來是要緩存一些信息,以避免在URL上面傳遞參數,但沒有考慮過cookie會帶來什麼問題:
① cookie大小限制在4k左右,不適合存業務數據
② cookie每次隨HTTP事務一起發送,浪費帶寬
我們是做移動項目的,所以這裡真實適合使用的技術是localstorage,localstorage可以說是對cookie的優化,使用它可以方便在客戶端存儲數據,並且不會隨著HTTP傳輸,但也不是沒有問題:
① localstorage大小限制在500萬字符左右,各個浏覽器不一致
② localstorage在隱私模式下不可讀取
③ localstorage本質是在讀寫文件,數據多的話會比較卡(firefox會一次性將數據導入內存,想想就覺得嚇人啊)
④ localstorage不能被爬蟲爬取,不要用它完全取代URL傳參
瑕不掩瑜,以上問題皆可避免,所以我們的關注點應該放在如何使用localstorage上,並且是如何正確使用。
localstorage的使用
基礎知識
localstorage存儲對象分為兩種:
① sessionStrage: session即會話的意思,在這裡的session是指用戶浏覽某個網站時,從進入網站到關閉網站這個時間段,session對象的有效期就只有這麼長。
② localStorage: 將數據保存在客戶端硬件設備上,不管它是什麼,意思就是下次打開計算機時候數據還在。
兩者區別就是一個作為臨時保存,一個長期保存。
真實場景
實際工作中對localstorage的使用一般有以下需求:
① 緩存一般信息,如搜索頁的出發城市,達到城市,非實時定位信息
② 緩存城市列表數據,這個數據往往比較大
③ 每條緩存信息需要可追蹤,比如服務器通知城市數據更新,這個時候在最近一次訪問的時候要自動設置過期
④ 每條信息具有過期日期狀態,在過期外時間需要由服務器拉取數據
以上就是我們給大家介紹的HTML5中Localstorage了。希望大家繼續關注我們的網站!