diff --git a/client/src/adapters/auth.ts b/client/src/adapters/auth.ts index d96373339b0407d006e0ba37dc0e4f4cff63e6dd..c0463a7f22b9e101842fe235b27d51301a449dfb 100644 --- a/client/src/adapters/auth.ts +++ b/client/src/adapters/auth.ts @@ -27,15 +27,20 @@ export function clearToken() { localStorage.removeItem('access-token'); } +extendAccessToken(); setInterval(extendAccessToken, 1000 * 60 * 30); async function extendAccessToken() { if (isLoggedIn()) { - const response = await fetch(`${apiRoot}/auth/extend`, { headers: getAuthHeader() }); - if (response.ok) { - const json = await response.json(); - setToken(json.token); - } else if (response.status === 403) { + try { + const response = await fetch(`${apiRoot}/auth/extend`, { headers: getAuthHeader() }); + if (response.ok) { + const json = await response.json(); + setToken(json.token); + } else if (response.status === 403) { + clearToken(); + } + } catch(e) { clearToken(); } }