From fb1f99e98dd98d9852987e862d40a56c5cb33f98 Mon Sep 17 00:00:00 2001 From: Hamidreza Ghavami <70919649+hamid-gh98@users.noreply.github.com> Date: Sun, 10 Mar 2024 18:29:24 +0330 Subject: [PATCH] [update] handle response status code via axios --- web/assets/js/axios-init.js | 14 ++++++++++++++ web/assets/js/util/utils.js | 10 +++++----- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/web/assets/js/axios-init.js b/web/assets/js/axios-init.js index b864b714..f0b0f4be 100644 --- a/web/assets/js/axios-init.js +++ b/web/assets/js/axios-init.js @@ -14,3 +14,17 @@ axios.interceptors.request.use( }, (error) => Promise.reject(error), ); + +axios.interceptors.response.use( + (response) => response, + (error) => { + if (error.response) { + const statusCode = error.response.status; + // Check the status code + if (statusCode === 401) { // Unauthorized + return window.location.reload(); + } + } + return Promise.reject(error); + } +); diff --git a/web/assets/js/util/utils.js b/web/assets/js/util/utils.js index 61b322bd..f2f05f01 100644 --- a/web/assets/js/util/utils.js +++ b/web/assets/js/util/utils.js @@ -131,11 +131,11 @@ class RandomUtil { static randomUUID() { const template = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'; return template.replace(/[xy]/g, function (c) { - const randomValues = new Uint8Array(1); - crypto.getRandomValues(randomValues); - let randomValue = randomValues[0] % 16; - let calculatedValue = (c === 'x') ? randomValue : (randomValue & 0x3 | 0x8); - return calculatedValue.toString(16); + const randomValues = new Uint8Array(1); + crypto.getRandomValues(randomValues); + let randomValue = randomValues[0] % 16; + let calculatedValue = (c === 'x') ? randomValue : (randomValue & 0x3 | 0x8); + return calculatedValue.toString(16); }); }