javascript загрузить файл с пути

#javascript #html #laravel #file #download

#javascript #HTML #laravel #файл #Скачать

Вопрос:

Ниже приведен пример, который я использовал для загрузки файлов, но он открывает файл только на следующей вкладке. он не загружает файлы.

 function download(items) {
 
  items.forEach(function (item, index) {
   // console.log(item);
    var anchor = document.createElement('a');
    anchor.href = item.url;
    anchor.target = '_blank';
    anchor.download = item.name;
    anchor.innerHTML ='download';
    setTimeout(function () {
    //  console.log(anchor);
      anchor.click();      
    }, index * 100);
  });
}
 

Комментарии:

1. Можете ли вы поделиться тем, что item.url и item.name как выглядит?

2. Добро пожаловать в SO … какой URL-адрес генерируется? можете ли вы поместить это

3. имя: «dummy.pdf», url: » fixe-dev-account-files.s3-us-east-2.amazonaws.com/files/files/… 1/dummy.pdf»,

Ответ №1:

 fetch("https://upload.wikimedia.org/wikipedia/commons/a/a3/June_odd-eyed-cat.jpg")
    .then(response => response.blob())
    .then(blob => {

        const blobURL = URL.createObjectURL(blob);
        const a = document.createElement("a");
        a.href = blobURL;
        a.innerHTML = "download"
        a.setAttribute('download', 'true')
        document.body.appendChild(a);

    })
 

Атрибут загрузки работает только для URL-адресов того же источника

Этот вызов API принимает URL-адрес и создает загружаемое изображение

Комментарии:

1. теперь я получаю ошибку «Access-Control-Allow-Origin»