From fe9002501b213161bd08db7049eaa8444392e6d1 Mon Sep 17 00:00:00 2001 From: Bubka <858858+Bubka@users.noreply.github.com> Date: Thu, 28 Sep 2023 13:23:58 +0200 Subject: [PATCH] Reset the user store on unauthenticated HTTP response --- resources/js_vue3/services/httpClientFactory.js | 6 +++--- resources/js_vue3/stores/user.js | 10 +++++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/resources/js_vue3/services/httpClientFactory.js b/resources/js_vue3/services/httpClientFactory.js index 2a1237ee..a0acb6c0 100644 --- a/resources/js_vue3/services/httpClientFactory.js +++ b/resources/js_vue3/services/httpClientFactory.js @@ -1,4 +1,5 @@ import axios from "axios" +import { useUserStore } from '@/stores/user' export const httpClientFactory = (endpoint = 'api') => { let baseURL @@ -26,10 +27,9 @@ export const httpClientFactory = (endpoint = 'api') => { if ( error.response && [401, 419].includes(error.response.status) - // && store.getters["auth/authUser"] && - // !store.getters["auth/guest"] ) { - // store.dispatch("auth/logout"); + const user = useUserStore() + user.reset() } return Promise.reject(error); } diff --git a/resources/js_vue3/stores/user.js b/resources/js_vue3/stores/user.js index 10da6093..7d8cf420 100644 --- a/resources/js_vue3/stores/user.js +++ b/resources/js_vue3/stores/user.js @@ -34,14 +34,18 @@ export const useUserStore = defineStore({ } else { return authService.logout().then(() => { - localStorage.clear() - this.$reset() - router.push({ name: 'login' }) + this.reset() }) // this.$router.push({ name: 'login', params: { forceRefresh: true } }) } // }, + }, + + reset() { + localStorage.clear() + this.$reset() + router.push({ name: 'login' }) } },