Обновить страницу при удалении localStorage - PullRequest
0 голосов
/ 01 июня 2019

Я создаю приложение вactjs.

Я использую JWT в localStorage для аутентификации пользователя в каждом запросе в бэкэнде.

Что я хочу сделать, так это автоматически выйти из системы, когда localStorage удаляется с помощью файлов cookie от пользователя ИЛИ, если токен JWT истекает.

Можно ли добавить прослушиватель, который запускается при удалении localStorage?

Пока я делаю что-то вроде

if(!!localStorage.getItem('id_token') && !this.isTokenExpired(token)) {
  // eslint-disable-next-line
  location.reload(true);
}

Это работает, но неэффективно добавлять эти строки кода в функции каждой кнопки.

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

Любой совет? Заранее спасибо

1 Ответ

0 голосов
/ 01 июня 2019

Наконец, я решаю это, добавив прослушиватель событий и index.js

window.addEventListener('storage', function(e) {
  if(!Auth.loggedIn()) {
    // eslint-disable-next-line
    location.reload(true);
  }
});

Поэтому, когда меняется хранилище, я проверяю, вошел ли пользователь в систему, и перезагружаю страницу. Когда страница перезагружается, я выхожу из системы.

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