как сохранить файл с именем в функции загрузки с помощью javascript?

У меня есть функция в моем веб-приложении, которая позволяет мне загружать настоящее изображение. Что я также хотел бы сделать, так это дать мне возможность сохранить этот файл под именем при загрузке.

Моя функция такова:

 function saveFile(){
      var dataURL = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream"); 
      console.log(dataURL);
      window.location.href = dataURL; 
    }

И как я могу назвать этот файл? Спасибо вам всем!


person ladyperceval    schedule 13.05.2021    source источник
comment
Отвечает ли это на ваш вопрос? Загрузка файла. Как я могу контролировать имя файла И уважать предпочтения пользователей?   -  person Daniel Stoyanoff    schedule 13.05.2021


Ответы (1)


Сначала создайте anchor tag и добавьте атрибуты href и download, чтобы указать uri и имя файла соответственно.

function saveFile(){
      var dataURL = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream"); 
      console.log(dataURL);
      const anchorLink = document.createElement('a');
      document.body.appendChild(anchorLink)
      anchorLink.href = dataURL;
      anchorLink.download = "file_name.png"; 
      anchorLink.click();
      document.body.removeChild(anchorLink)
}
person Rahul Kumar    schedule 13.05.2021
comment
Объект location не является элементом привязки. У него нет свойства download. developer.mozilla.org/en-US/docs/Web/ API/окно/местоположение - person Quentin; 13.05.2021
comment
Извините... Обновил код. - person Rahul Kumar; 13.05.2021