vue-vben-admin 页面多次刷新的时候会导致memeory中存储的,token 失效

3phpmpom  于 2023-03-19  发布在  其他
关注(0)|答案(2)|浏览(644)

⚠️ 重要 ⚠️ 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 已阅读 文档 .
  • 确保您的代码已是最新或者所报告的 Bug 在最新版本中可以重现. (部分 Bug 可能已经在最近的代码中修复)
  • 已在 Issues 中搜索了相关的关键词
  • 不是 ant design vue 组件库的 Bug

描述 Bug

页面多次刷新的时候会导致memeory中存储的,token 失效
src\router\guard\permissionGuard.ts 中调用 src\utils\auth\index.ts 中的 getToken(), 返回值 undefined;

我暂时打算把initPersistentMemory(); 放到 main.js,而不是在 persistent.ts 中去调用,,也没能解决问题

复现 Bug

两次刷新就会出现;
页面多次刷新的时候会导致memeory中存储的,token 失效
src\router\guard\permissionGuard.ts 中调用 src\utils\auth\index.ts 中的 getToken(), 返回值 undefined

系统信息

  • 操作系统:win10
  • Node 版本: 14+
  • 包管理器 (yarn) 及其版本:
tuwxkamq

tuwxkamq1#

memory.js 设计的很巧妙,但是带来的问题也太多,排查到了应该是这个问题所在。 有关登录方面,官方还是再梳理梳理逻辑,或者写一下文档
// const expire = item.time;
// if (expire > now) {
// this.set(k, item.value, expire);
// }
const time = item.time;
if (time > now) {
const expire = time - now;
this.set(k, item.value, expire);
}

falq053o

falq053o2#

现在代码中在路由钩子里是判断如果在登录的路由,会清空掉memory的cache的。localstorage中的信息依然存在。所以可以从memory对象的this.cache排查问题

相关问题