js来读写cookie操作

因为之前公司的项目前后端是在一起的,因为要用vue来重构之前的项目。所以token签名要作为一个参数传递到后台。所以就遇到两个问题,1 token的保存和获取的问题。 2 token 判断。判断用户是否用token值。

首先先说一下 token的保存和获取问题。

保存到哪?随着H5的普及相信大家也都知道本地存储,包括我自己在开发的时候也是也是经常用到本地存储的东西。所以我首先想到的就是本地存储。另外想到就是用cookie来存储。在调研这个东西的时候就了解到国内的某大互联网公司,他们的做法是在登陆的时候会下载一个安全的插件在本地。然后这个用户信息都是存储在本地的,所以可以跨引用去读取,比如从浏览器跨到桌面应用。因为都是取的本地的东西,就像一个中转站。

相信本地存储的操作大家都会不在具体阐述,先说一下本地存储中遇到的问题。右键打开新连接(如下图操作)

 

在新连接的打开页面中,要重新登陆。相信大家都不想再次登陆吧,这样体验会很不友好。然后发现本地存储的东西都是只有在当前页面的当前域名下。所以只能存在cookie里面了,cookie里面不会出现这个问题。具体要说cookie的涉及的内容较多详细信息就不再多说,下面只说一下js来控制cookie的操作。

  1 设置cookie

document.cookie="name="+username;

例如 document.cookie="access_token=" + val;

2 读取(在控制台里面 直接输入 document.cookie 就可以返回 该域名下的 cookie 信息,就是字符串,也就是说js进行字符串操作)

function getCookie(name)
{
  var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
    if(arr=document.cookie.match(reg))
      return unescape(arr[2]);
    else
      return null;
}
3 删除

//获取当前时间 
var date=new Date(); 
//将date设置为过去的时间 
date.setTime(date.getTime()-10000); 
//将userId这个cookie删除 
document.cookie="name=val; expires="+date.toGMTString(); 

判断用户是否有token,是在路由里面去判断,也就是在拦截的时候去判断是否有token。




  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值