¿Cómo cerrar la sesión del usuario cuando una de las API responde No autorizado 401 con Nuxt-Auth? Uso AXIOS y funciones integradas de Nuxt-Auth para solicitudes
Mi configuración de nuxt-config para nuxt-auth:
auth: { redirect: { login: '/login', logout: '/', callback: '/login', home: '/panel/dashboard' }, strategies: { local: { token: { property: 'token', global: true, type: 'Bearer', required: true, }, user: { property: 'user', autoFetch: true }, endpoints: { login: {url: '/api/auth/login_verify', method: 'post'}, logout: {url: '/api/auth/logout', method: 'get'}, user: {url: '/api/auth/validate', method: 'get'}, }, }, } },Como está usando Axios, será fácil usar Interceptors y detectar el error de acuerdo con sus requisitos y luego llamar a la acción de cierre de sesión.
Algo como a continuación con un complemento creado en src/plugins/axios.js funcionará
export default function ({ $axios }) { $axios.onError((error) => { if (error.response.status === 401) { CALL_LOGOUT_ACTION_HERE } }) }