Проблема не в конфигурации S3 Bucket, а в том, как вы рендеринг изображения.
Если вы откроете ваше изображение ссылка , вы четко увидите, что оно доступно.
То, что вы делаете неправильно, пытается отобразить изображение в элементе span
, поэтому в вашем примере он отображает данные изображения в виде строки base64.
Просто измените элемент span
наЭлемент img
затем установите img.src
на dataUrl
function getData(link){
var image = new Image();
// image.crossOrigin = 'use-credentials';
image.crossOrigin = 'anonymous';
// create an empty canvas element
var canvas = document.createElement("canvas"),
canvasContext = canvas.getContext("2d");
image.onload = function () {
//Set canvas size is same as the picture
canvas.width = image.width;
canvas.height = image.height;
// draw image into canvas element
canvasContext.drawImage(image, 0, 0, image.width, image.height);
// get canvas contents as a data URL (returns png format by default)
var dataURL = canvas.toDataURL();
document.getElementById("test").src = dataURL;
};
image.src = link;
}
getData("https://whammybar.s3.ap-southeast-1.amazonaws.com/duy-gmail-com/productImage/20181001/11bba32c-b276-47f4-b1fa-e87b53136bcc.jpg")
<img id="test">