fix(apollo): logout on stale Auth0 token errors (#2887)
dancefinder-app / build (push) Successful in 1m59s
dancefinder-app / deploy-prod (push) Successful in 1m53s

This commit was merged in pull request #2887.
This commit is contained in:
2026-05-05 17:36:59 +00:00
parent 5e5071df2e
commit 189e35acf8
+13 -1
View File
@@ -18,10 +18,22 @@ const cache = new InMemoryCache({
},
})
const STALE_AUTH_ERRORS = new Set([
'login_required',
'consent_required',
'interaction_required',
'invalid_grant',
'missing_refresh_token',
])
const getToken = async (options: GetTokenSilentlyOptions) => {
const nuxtApp = useNuxtApp()
const auth0: Auth0VueClient = nuxtApp.$auth0 as Auth0VueClient
return await auth0.getAccessTokenSilently(options).catch(() => {
return await auth0.getAccessTokenSilently(options).catch((err) => {
const code = err && typeof err === 'object' && 'error' in err ? (err as { error?: string }).error : undefined
if (code && STALE_AUTH_ERRORS.has(code)) {
auth0.logout({ openUrl: false }).catch(() => {})
}
return undefined
})
}