Estoy tratando de obtener una imagen del cubo de Amazon s3 usando el siguiente código:
const downloadImg = (imgurl, name) => { console.log(imgurl); fetch(imgurl, { method: 'GET', headers: {} }) .then(response => { response.arrayBuffer().then(function(buffer) { const url = window.URL.createObjectURL(new Blob([buffer])); const link = document.createElement('a'); link.href = url; link.setAttribute('download', `${name}.svg`); document.body.appendChild(link); link.click(); }); }) .catch(err => { console.log(err); }); }; Este es el error que recibo: Access to fetch at 'https://***.amazonaws.com/withText/2022/punkhealth.svg' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
Tengo la siguiente configuración de CORS en el depósito s3:
[ { "AllowedHeaders": [ "*" ], "AllowedMethods": [ "GET", "HEAD" ], "AllowedOrigins": [ "*" ], "ExposeHeaders": [ "Access-Control-Allow-Origin" ] } ]¿Cómo se puede solucionar este error? Además, se puede acceder a la URL a través del cartero.