javascript - window.location 从 localStorage 中删除了 token

标签 javascript vue.js redirect local-storage window.location

login(data){
    let appUrl = process.env.MIX_APP_PRO + process.env.MIX_APP_URL;
    axios.post('/api/auth/login', data)
    .then(res => {
        this.responseAfterLogin(res)
    })
    .then(dat => {
       let appUrl = '/hub';
       window.location = appUrl;
    })
    .catch(function(error){
        if(error.response){
            Exception.handle(error.response.data)
        }
    })
}
responseAfterLogin(res){
    const access_token = res.data.access_token;
        const username = res.data.user;
        if(Token.isValid(access_token)){
            AppStorage.store(username, access_token);
        }
    }
}

上面是我用来让用户登录到我的系统并将访问 token 存储到 localStorage 的功能,但是问题是当用户在成功登录后重定向时, token 会如何从本地存储中删除。

请帮忙。

import Token from "./Token";

class AppStorage{
    storeToken(token){
        window.localStorage.setItem('token', token);
    }

    storeUser(user){
        window.localStorage.setItem('user', user);
    }

    store(user, token){
        this.storeToken(token);
        this.storeUser(user);
    }

    clear(){
        window.localStorage.removeItem('user');
        window.localStorage.removeItem('token');
    }

    getToken(){
        return window.localStorage.getItem('token');
    }

    getUser(){
        return window.localStorage.getItem('user');
    }

}

export default AppStorage = new AppStorage()

这是我用来在 localStorage 中存储和检索值的应用程序存储类。

最佳答案

本地存储由协议(protocol)://主机:端口分隔,因此如果您重定向到具有不同域/子域的页面,您将无法访问您填充的本地存储

关于javascript - window.location 从 localStorage 中删除了 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60016693/

相关文章:

javascript - 如何在Vue JS组件中使用全局变量?

tomcat - 关闭时将tomcat重定向到维护页面

javascript - 如何使用 JavaScript 获取 SharePoint-UserField?

JavaScript search() 找不到 "()"

javascript - 为什么在 jQuery 中执行某些脚本之前无法将光标更改为 "progress"?

vue.js - 如何将 Buefy 的 Dialog 组件与用户提供的内容一起使用并确保 XSS 安全

vue.js - 使用 moment.js 在日期和时间之间添加空格

javascript - 是否可以通过 HTaccess 重定向触发 Javascript 操作?

jsf - URL 重定向不适用于 preRenderView 事件

javascript - 如何读取 canvas 元素中 SVG 的 viewbox 属性?