window.location 从 localStorage 中删除了令牌
window.location removed the token from localStorage
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);
}
}
}
以上是我用来让用户登录到我的系统并将访问令牌存储到 localStorage 的功能,但是问题是当用户在成功登录令牌后被重定向时,令牌是如何从本地删除的存储空间。
请帮忙。
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()
这是应用程序存储 class 我用来在 localStorage 中存储和检索值。
LocalStorage 由 protocol://host:port 分隔,因此如果您重定向到具有不同 domain/subdomain 的页面,您将无法访问您填充的本地存储
伙计们,这个问题已经解决了,是我的错误。
当我在服务器上上传网站时,我需要在安装 JWT 模块时为 JWT 密钥生成密钥,但我没有这样做。
所以用户没有正确登录,这就是为什么令牌由于身份验证不成功而从 localStorage 中删除的原因。
感谢大家的帮助。
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);
}
}
}
以上是我用来让用户登录到我的系统并将访问令牌存储到 localStorage 的功能,但是问题是当用户在成功登录令牌后被重定向时,令牌是如何从本地删除的存储空间。
请帮忙。
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()
这是应用程序存储 class 我用来在 localStorage 中存储和检索值。
LocalStorage 由 protocol://host:port 分隔,因此如果您重定向到具有不同 domain/subdomain 的页面,您将无法访问您填充的本地存储
伙计们,这个问题已经解决了,是我的错误。
当我在服务器上上传网站时,我需要在安装 JWT 模块时为 JWT 密钥生成密钥,但我没有这样做。
所以用户没有正确登录,这就是为什么令牌由于身份验证不成功而从 localStorage 中删除的原因。
感谢大家的帮助。