diff --git a/lib/interceptors/csrf-token.ts b/lib/interceptors/csrf-token.ts index 7d51984..87419e1 100644 --- a/lib/interceptors/csrf-token.ts +++ b/lib/interceptors/csrf-token.ts @@ -3,8 +3,9 @@ import { generateUrl } from '@nextcloud/router' const RETRY_KEY = Symbol('csrf-retry') export const onError = axios => async (error) => { - const { config, response, request: { responseURL } } = error - const { status } = response + const { config, response, request } = error + const responseURL = request?.responseURL + const status = response?.status if (status === 412 && response?.data?.message === 'CSRF check failed' diff --git a/lib/interceptors/maintenance-mode.ts b/lib/interceptors/maintenance-mode.ts index 8918189..42098cd 100644 --- a/lib/interceptors/maintenance-mode.ts +++ b/lib/interceptors/maintenance-mode.ts @@ -1,8 +1,10 @@ const RETRY_DELAY_KEY = Symbol('retryDelay') export const onError = axios => async (error) => { - const { config, response, request: { responseURL } } = error - const { status, headers } = response + const { config, response, request } = error + const responseURL = request?.responseURL + const status = response?.status + const headers = response?.headers /** * Retry requests if they failed due to maintenance mode @@ -29,4 +31,4 @@ export const onError = axios => async (error) => { } return Promise.reject(error) -} \ No newline at end of file +} diff --git a/lib/interceptors/not-logged-in.ts b/lib/interceptors/not-logged-in.ts index b92f8d9..92f72bf 100644 --- a/lib/interceptors/not-logged-in.ts +++ b/lib/interceptors/not-logged-in.ts @@ -1,6 +1,7 @@ export const onError = async (error) => { - const { config, response, request: { responseURL } } = error - const { status } = response + const { config, response, request } = error + const responseURL = request?.responseURL + const status = response?.status if (status === 401 && response?.data?.message === 'Current user is not logged in'