详解vue中localStorage的使用方法


Posted in Javascript onNovember 22, 2018

什么是localStorage

对浏览器来说,使用 Web Storage 存储键值对比存储 Cookie 方式更直观,而且容量更大,它包含两种:localStorage 和 sessionStorage

1.sessionStorage(临时存储) :为每一个数据源维持一个存储区域,在浏览器打开期间存在,包括页面重新加载

2.localStorage(长期存储) :与 sessionStorage 一样,但是浏览器关闭后,数据依然会一直存在

所以上次使用cookie的时候就遇到了一个坑,设置后马上访问session会获取不到,蛋疼,还需要刷新一下,原因是:

当我们首次访问设置Cookie的页面时,服务器会把设置的Cookie值通过响应头发送过来,告诉浏览器将cookie存储的本地相应文件夹中(注意:第一次访问时本地还没有存储Cookie,所以此时获取不到值);

当第二次访问(或在进行cookie设置后,过期前所有的访问)时,请求头信息你中都会把Cookie值携带。(百度到的,暂时还没理解透彻,先搬过来).

vue中实现本地储存的方法:localStorage,在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同。

(1).储存数据

localStorage.setItem('accessToken', 'Bearer ' + response.data.result.accessToken)

(2).取出数据

localStorage.getItem('accessToken')

(3).删除储存数据

localStorage.removeItem('accessToken')

(4).更改数据

localStorage.setItem('accessToken', '更改后' + response.data.result.accessToken)

使用时有两点需要注意过的地方:

. localStorage在浏览器的隐私模式下面是不可读取的。
. localStorage本质上是对字符串的读取,有json格式时需要JSON.stringify()转化为字符串。
. localStorage不能被爬虫抓取到

注意点

  • localStorage有效期是永久的。一般的浏览器能存储的是5MB左右。sessionStorage api与localStorage相同。
  • sessionStorage默认的有效期是浏览器的会话时间(也就是说标签页关闭后就消失了)。
  • localStorage作用域是协议、主机名、端口。(理论上,不人为的删除,一直存在设备中)
  • sessionStorage作用域是窗口、协议、主机名、端口。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery 一次处理多个ajax请求的代码
Sep 02 Javascript
jquery实现marquee效果(文字或者图片的水平垂直滚动)
Jan 07 Javascript
JQuery中上下文选择器实现方法
May 18 Javascript
jQuery实现表格行上移下移和置顶的方法
May 22 Javascript
利用jquery制作滚动到指定位置触发动画
Mar 26 Javascript
AngularJS中$apply方法和$watch方法用法总结
Dec 13 Javascript
浅谈Vuex@2.3.0 中的 state 支持函数申明
Nov 22 Javascript
JavaScript格式化json和xml的方法示例
Jan 22 Javascript
基于javascript的拖拽类封装详解
Apr 19 Javascript
解决vue中使用proxy配置不同端口和ip接口问题
Aug 14 Javascript
Postman如何实现参数化执行及断言处理
Jul 28 Javascript
vue的hash值原理也是table切换实例代码
Dec 14 Vue.js
微信小程序功能之全屏滚动效果的实现代码
Nov 22 #Javascript
layer弹出子iframe层父子页面传值的实现方法
Nov 22 #Javascript
js操作table中tr的顺序实现上移下移一行的效果
Nov 22 #Javascript
从源码里了解vue中的nextTick的使用
Nov 22 #Javascript
Vue动态加载异步组件的方法
Nov 21 #Javascript
微信小程序局部刷新触发整页刷新效果的实现代码
Nov 21 #Javascript
跨域解决之JSONP和CORS的详细介绍
Nov 21 #Javascript
You might like
2款PHP无限级分类实例代码
2015/11/11 PHP
学习php设计模式 php实现备忘录模式(Memento)
2015/12/09 PHP
php记录搜索引擎爬行记录的实现代码
2018/03/02 PHP
PHP实现基于3DES算法加密解密字符串示例
2018/08/24 PHP
javascript while语句和do while语句的区别分析
2007/12/08 Javascript
jQuery-Easyui 1.2 实现多层菜单效果的代码
2012/01/13 Javascript
ko knockoutjs动态属性绑定技巧应用
2012/11/14 Javascript
JavaScript弹出窗口方法汇总
2014/08/12 Javascript
JavaScript实现快速排序的方法
2015/07/31 Javascript
JavaScript如何获取数组最大值和最小值
2015/11/18 Javascript
JavaScript实现简单的拖动效果
2016/07/02 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
Angular 2.0+ 的数据绑定的实现示例
2017/08/09 Javascript
关于Mac下安装nodejs、npm和cnpm的教程
2018/04/11 NodeJs
JS解析后台返回的JSON格式数据实例
2018/08/06 Javascript
JavaScript使用递归和循环实现阶乘的实例代码
2018/08/28 Javascript
js中的数组对象排序分析
2018/12/11 Javascript
关于vue 项目中浏览器跨域的配置问题
2020/11/10 Javascript
vue实现下载文件流完整前后端代码
2020/11/17 Vue.js
[01:51]2014DOTA2国际邀请赛 这个赛场没有失败者VGTi5再见
2014/07/23 DOTA
[03:26]回顾2015国际邀请赛中国区预选赛
2015/06/09 DOTA
[58:42]DOTA2上海特级锦标赛C组败者赛 Newbee VS Archon第一局
2016/02/27 DOTA
Linux下Python获取IP地址的代码
2014/11/30 Python
win10下Python3.6安装、配置以及pip安装包教程
2017/10/01 Python
python使用生成器实现可迭代对象
2018/03/20 Python
linux安装Python3.4.2的操作方法
2018/09/28 Python
python微信公众号之关注公众号自动回复
2018/10/25 Python
python爬虫之快速对js内容进行破解
2019/07/09 Python
TensorFlow设置日志级别的几种方式小结
2020/02/04 Python
python+selenium 简易地疫情信息自动打卡签到功能的实现代码
2020/08/22 Python
巡警年度自我鉴定
2014/02/21 职场文书
检查机关领导群众路线教育实践活动个人整改措施
2014/10/28 职场文书
大学同学聚会感言
2015/07/30 职场文书
2019年浪漫婚礼证婚词
2019/06/27 职场文书
话题作文之呼唤
2019/12/18 职场文书
CSS3 Tab动画实例之背景切换动态效果
2021/08/23 HTML / CSS