diff --git a/src/customizations/volto/helpers/Api/Api.js b/src/customizations/volto/helpers/Api/Api.js index 8642ad53..f6f65ac2 100644 --- a/src/customizations/volto/helpers/Api/Api.js +++ b/src/customizations/volto/helpers/Api/Api.js @@ -110,6 +110,10 @@ class Api { Object.keys(headers).forEach((key) => request.set(key, headers[key])); + if (__SERVER__ && checkUrl && ['get', 'head'].includes(method)) { + request.redirects(0); + } + if (data) { request.send(data); } @@ -140,6 +144,12 @@ class Api { url: request.xhr.responseURL, }); } + if (err?.status[0] === 3) { + return reject({ + code: err.status, + url: err.response.headers.location, + }); + } return err ? reject(err) : resolve(response.body || response.text); }); });