diff --git a/packages/strapi-helper-plugin/lib/src/utils/request.js b/packages/strapi-helper-plugin/lib/src/utils/request.js index 9e7fea5369..1d28fd9e7f 100644 --- a/packages/strapi-helper-plugin/lib/src/utils/request.js +++ b/packages/strapi-helper-plugin/lib/src/utils/request.js @@ -21,10 +21,7 @@ function parseJSON(response) { * @return {object|undefined} Returns either the response, or throws an error */ function checkStatus(response, checkToken = true) { - if ( - (response.status >= 200 && response.status < 300) || - response.status === 0 - ) { + if ((response.status >= 200 && response.status < 300) || response.status === 0) { return response; } @@ -32,12 +29,16 @@ function checkStatus(response, checkToken = true) { return checkTokenValidity(response); } - return parseJSON(response).then(responseFormatted => { - const error = new Error(response.statusText); - error.response = response; - error.response.payload = responseFormatted; - throw error; - }); + return parseJSON(response) + .then(responseFormatted => { + const error = new Error(response.statusText); + error.response = response; + error.response.payload = responseFormatted; + throw error; + }) + .catch(() => { + throw response; + }); } function checkTokenValidity(response) { @@ -114,13 +115,7 @@ function serverRestartWatcher(response) { * @return {object} The response data */ export default function request(...args) { - let [ - url, - options = {}, - shouldWatchServerRestart, - stringify = true, - ...rest - ] = args; + let [url, options = {}, shouldWatchServerRestart, stringify = true, ...rest] = args; let noAuth; try { diff --git a/packages/strapi-plugin-upload/admin/src/containers/InputModalStepper/InputModalStepper.js b/packages/strapi-plugin-upload/admin/src/containers/InputModalStepper/InputModalStepper.js index b23f1a0e3f..d4f8ec2dbb 100644 --- a/packages/strapi-plugin-upload/admin/src/containers/InputModalStepper/InputModalStepper.js +++ b/packages/strapi-plugin-upload/admin/src/containers/InputModalStepper/InputModalStepper.js @@ -234,12 +234,12 @@ const InputModalStepper = ({ isOpen, onToggle, onInputMediaChange }) => { handleEditExistingFile(editedFile); goToList(); } catch (err) { - console.error(err); - const status = get(err, 'response.status', null); + const status = get(err, 'response.status', get(err, 'status', null)); + const statusText = get(err, 'response.statusText', get(err, 'statusText', null)); const errorMessage = get( err, ['response', 'payload', 'message', '0', 'messages', '0', 'message'], - get(err, ['response', 'payload', 'message'], 'An error occurred') + get(err, ['response', 'payload', 'message'], statusText) ); if (status) { diff --git a/packages/strapi-plugin-upload/admin/src/containers/InputModalStepperProvider/index.js b/packages/strapi-plugin-upload/admin/src/containers/InputModalStepperProvider/index.js index 9a0d401586..c8c97d4726 100644 --- a/packages/strapi-plugin-upload/admin/src/containers/InputModalStepperProvider/index.js +++ b/packages/strapi-plugin-upload/admin/src/containers/InputModalStepperProvider/index.js @@ -402,12 +402,12 @@ const InputModalStepperProvider = ({ multiple, }); } catch (err) { - console.error(err); - const status = get(err, 'response.status', null); + const status = get(err, 'response.status', get(err, 'status', null)); + const statusText = get(err, 'response.statusText', get(err, 'statusText', null)); const errorMessage = get( err, ['response', 'payload', 'message', '0', 'messages', '0', 'message'], - 'An error occured' + get(err, ['response', 'payload', 'message'], statusText) ); if (status) { diff --git a/packages/strapi-plugin-upload/admin/src/containers/ModalStepper/index.js b/packages/strapi-plugin-upload/admin/src/containers/ModalStepper/index.js index e06d671a7f..181fae915d 100644 --- a/packages/strapi-plugin-upload/admin/src/containers/ModalStepper/index.js +++ b/packages/strapi-plugin-upload/admin/src/containers/ModalStepper/index.js @@ -313,11 +313,12 @@ const ModalStepper = ({ toggleRef.current(true); } catch (err) { console.error(err); - const status = get(err, 'response.status', null); + const status = get(err, 'response.status', get(err, 'status', null)); + const statusText = get(err, 'response.statusText', get(err, 'statusText', null)); const errorMessage = get( err, ['response', 'payload', 'message', '0', 'messages', '0', 'message'], - get(err, ['response', 'payload', 'message'], 'An error occurred') + get(err, ['response', 'payload', 'message'], statusText) ); if (status) { @@ -397,11 +398,12 @@ const ModalStepper = ({ }); } catch (err) { console.error(err); - const status = get(err, 'response.status', null); + const status = get(err, 'response.status', get(err, 'status', null)); + const statusText = get(err, 'response.statusText', get(err, 'statusText', null)); const errorMessage = get( err, ['response', 'payload', 'message', '0', 'messages', '0', 'message'], - get(err, ['response', 'payload', 'message'], 'An error occured') + get(err, ['response', 'payload', 'message'], statusText) ); if (status) {