From e349d12a14d40581e4868a17bb4444a3e7356652 Mon Sep 17 00:00:00 2001 From: Mirlan Date: Wed, 3 Feb 2021 17:59:21 +0600 Subject: [PATCH] fix(793): logout on 403 or 401 response codes (#287) --- src/helpers/callApi/checkStatus.tsx | 2 +- src/helpers/callApi/logoutIfUnauthorized.tsx | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/helpers/callApi/checkStatus.tsx b/src/helpers/callApi/checkStatus.tsx index 4b3b206a..33966a4b 100644 --- a/src/helpers/callApi/checkStatus.tsx +++ b/src/helpers/callApi/checkStatus.tsx @@ -1,6 +1,6 @@ export const checkStatus = (response: Response) => { if (!response.ok) { - return Promise.reject(new Error(response.statusText)) + return Promise.reject(response) } return Promise.resolve(response) diff --git a/src/helpers/callApi/logoutIfUnauthorized.tsx b/src/helpers/callApi/logoutIfUnauthorized.tsx index b98f9e92..4e856b5c 100644 --- a/src/helpers/callApi/logoutIfUnauthorized.tsx +++ b/src/helpers/callApi/logoutIfUnauthorized.tsx @@ -1,12 +1,13 @@ import { PAGES } from 'config' import { removeToken } from 'helpers' -export const logoutIfUnauthorized = (error: Error) => { - if (error.message === 'Unauthorized') { +export const logoutIfUnauthorized = (response: Response) => { + if (response.status === 401 || response.status === 403) { removeToken() window.location.pathname = PAGES.login } + const error = new Error(response.statusText) // eslint-disable-next-line no-console console.error(error) return Promise.reject(error)