window.location удалил токен из localStorage - PullRequest
0 голосов
/ 01 февраля 2020
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()

Это класс хранения приложений, который я использую для хранения и извлечения значений в localStorage.

Ответы [ 2 ]

1 голос
/ 01 февраля 2020

LocalStorage разделен протоколом: // хост: порт, поэтому, если вы перенаправляете на страницу, которая имеет другой домен / поддомен, у вас не будет доступа к локальному хранилищу, которое вы заполнили

0 голосов
/ 17 февраля 2020

Ребята, эта проблема была решена, это была моя ошибка.

Когда я загружал сайт на сервер, мне нужно было сгенерировать ключ для ключа JWT во время установки модулей JWT, чего я не сделал.

Таким образом, пользователь не выполнил вход должным образом, поэтому токен был удален из localStorage в результате неудачной аутентификации.

Спасибо за помощь, ребята.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...