react-token-auth icon indicating copy to clipboard operation
react-token-auth copied to clipboard

Token expiration error

Open ICS-Vortex opened this issue 4 years ago • 3 comments

Hello. In my console I often see a following error:

isTokenExpired.js:35 SyntaxError: Unexpected token  in JSON at position 94
    at JSON.parse (<anonymous>)
    at jwtExp (vendors~main.chunk.js:261086)
    at Object.push../node_modules/react-token-auth/lib/isTokenExpired.js.exports.isTokenExpired (vendors~main.chunk.js:261072)
    at vendors~main.chunk.js:260685
    at step (vendors~main.chunk.js:260600)
    at Object.next (vendors~main.chunk.js:260531)
    at vendors~main.chunk.js:260503
    at new Promise (<anonymous>)
    at push../node_modules/react-token-auth/lib/createAuthProvider.js.__awaiter (vendors~main.chunk.js:260482)
    at getSession (vendors~main.chunk.js:260679)
    at vendors~main.chunk.js:260716
    at step (vendors~main.chunk.js:260600)
    at Object.next (vendors~main.chunk.js:260531)
    at vendors~main.chunk.js:260503
    at new Promise (<anonymous>)
    at push../node_modules/react-token-auth/lib/createAuthProvider.js.__awaiter (vendors~main.chunk.js:260482)
    at vendors~main.chunk.js:260707
    at vendors~main.chunk.js:261721
    at step (vendors~main.chunk.js:261691)
    at Object.next (vendors~main.chunk.js:261622)
    at vendors~main.chunk.js:261594
    at new Promise (<anonymous>)
    at push../node_modules/react-token-auth/lib/utils/createAuthFetch.js.__awaiter (vendors~main.chunk.js:261573)
    at vendors~main.chunk.js:261714
    at main.chunk.js:11917
    at Object.dispatch (vendors~main.chunk.js:267492)
    at dispatch (<anonymous>:14608:80)
    at main.chunk.js:1432
    at invokePassiveEffectCreate (vendors~main.chunk.js:244378)
    at HTMLUnknownElement.callCallback (vendors~main.chunk.js:224994)
    at Object.invokeGuardedCallbackDev (vendors~main.chunk.js:225043)
    at invokeGuardedCallback (vendors~main.chunk.js:225103)
    at flushPassiveEffectsImpl (vendors~main.chunk.js:244460)
    at unstable_runWithPriority (vendors~main.chunk.js:269204)
    at runWithPriority$1 (vendors~main.chunk.js:232400)
    at flushPassiveEffects (vendors~main.chunk.js:244337)
    at vendors~main.chunk.js:244218
    at workLoop (vendors~main.chunk.js:269154)
    at flushWork (vendors~main.chunk.js:269128)
    at MessagePort.performWorkUntilDeadline (vendors~main.chunk.js:268894)

As far as I see, it comes from vendors, directly from react-token-auth LIB. Any ideas how to fix it ?

ICS-Vortex avatar Nov 30 '21 18:11 ICS-Vortex

Hi, thank you for raising the issues.

Could you say what do you have in the storage at the moment of obtaining the error?

obabichev avatar Nov 30 '21 19:11 obabichev

Hello. Yes, storage contains valid JSON

image

authProvider is defined as documentation says.

import {createAuthProvider} from 'react-token-auth';
import history from "../history";
import {PAGE_LOGIN} from "../constants/routes";

export const {useAuth, authFetch, login, logout, getSession, getSessionState} = createAuthProvider({
    storageKey: 'token',
    getAccessToken: session => session.token,
    storage: localStorage,
    onUpdateToken: (token) => {
        return fetch(process.env.REACT_APP_API_HOST + '/api/token/refresh', {
            method: 'POST',
            headers: {'Content-Type': 'application/json'},
            body: JSON.stringify({refreshToken: token.refreshToken})
        })
            .then(r => r.json())
            .catch((err) => {
                logout();
                console.error('Token Refresh error:', err);
                history.push(PAGE_LOGIN);
            })
    }
});

ICS-Vortex avatar Dec 01 '21 16:12 ICS-Vortex

i have the same isssue 🙁

LesterAngulo avatar Jan 06 '22 20:01 LesterAngulo