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/