关于Vuex中刷新会丢失的问题

首先vuex 只是全局保存在内存中的一些变量,刷新之后肯定会丢失。现在我解决的办法是要么就是设置cookie 要么就是localstorage还有就是sessionstorage.那么我选择localStorage.现在我的问题是如果我保存了一个token在本地存储中那么这个值肯定会过期 但是localStorage是永久存储的,我怎么样判断这个token值已经过期了然后去服务器重新获取这个token值。

一定要去交互一次服务器吗 是否可以在拿到token值的时候就设置一个本地另外一个值 然后通过之值去跟客户端获取的时间去比的话还有个问题就是客户端的时候往往是不准的可以改 这样的话还是需要服务器交互一次 这样的话还不如直接问服务器我这个token值是否已经过期了

希望有大佬能帮忙出点主意 谢谢了!

阅读 5.9k
5 个回答

考虑到大部分使用场景就好了,尽量避免那些实现复杂但效用很低的工作

我项目中是这样做的,给每个请求头部加上token。打个比方,我在查看购物车的商品,就请求一次接口,如果token过期,就会返回后端给你的状态码,告诉你已过期,这时你就可以设置路由跳向登录页面。

哈哈哈哈终于有人问这个问题了

永远不要相信客户端的东西。

我是token放cookie里,每次请求让服务端验证token的失效。
另外localStorage也可以有时效的。你在存的时候存个当时的时间。取得时候验证一下时间不就行了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题