需求:不允许token暴漏在地址栏
- 拿到token放到 sessionStorage里面 并重新刷新地址
- 所有统一使用query的页面就直接替换为sessionStorage
router.beforeEach((to, from, next) => {
// ... 其他代码 ...
// 检查是否有 token 参数
if (to.query.token) {
// 存储 token 到
sessionStorage sessionStorage.setItem('token', to.query.token);
// 使用 Vue Router 的 replace 方法来更新 URL
// 这里我们创建一个新的路由对象,删除 token 参数
const newQuery = { ...to.query };
delete newQuery.token;
// 删除 token 参数
router.replace({ ...to, query: newQuery })
.catch(err => {
console.error('Error while navigating:', err);
}); } // 设置 store 中的 token store.state.login.token = sessionStorage.getItem('token') || '';
// ... 其他代码 ... // 调用
next()
以继续导航 next();
});
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端