Контроль истечения срока действия JWT и перенаправление в промежуточном программном обеспечении Redux - PullRequest
0 голосов
/ 02 октября 2019

У пользователя есть действительный jwt в течение определенного периода времени. это заканчивается, если в течение 30 минут не выполняется никаких действий. Как я могу перенаправить пользователя на страницу входа в промежуточном ПО после истечения времени jwt

return (next) => (action) => {
    if (typeof action === 'function') {
      if (getToken() && !getState().auth.pendingRefreshingToken) {
        const tokenExp = new Date(getTokenExp() * 1000);
        if (new Date() < tokenExp) { // JWT Expiration Control
          const refreshThreshold = new Date((new Date().getTime() + 300000));
          if (refreshThreshold > new Date(getTokenExp() * 1000)) { 
            refreshToken(dispatch).then(() => next(action)); // JWT Refresh
          }
        } else {
          logoutMiddleware(dispatch); // JWT Expiration 
        }
      }
    }
    return next(action);
  };
...