下载javascript时的图像名称

Image name on download javascript

本文关键字:图像 javascript 下载      更新时间:2023-09-26

我需要一个JavaScript来下载一组图像。它应该下载一些这样的:

01.jpg
02.jpg
03.jpg....

但我得到了默认的文件名:

5cEDZLQ.jpg
5Npv209.jpg
5FgtD69.jpg...

这里是我要下载的功能:

function SaveToDisk(fileURL, fileName) {
        var save = document.createElement('a');
        save.href = fileURL;
        save.target = '_blank';
        save.download = fileName;
        var event = document.createEvent('Event');
        event.initEvent('click', true, true);
        save.dispatchEvent(event);
        window.webkitURL.revokeObjectURL(save.href);
    }

尝试了各种方法,但总是使用默认名称

下载

这是一个很长的时间,但这里是解决方案。

使用XMLHttpRequest下载图像/文件,并将结果传递给FileSaver.js中的函数saveAs

示例:

var xhr = new XMLHttpRequest();
var url = 'https://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Google_2015_logo.svg/272px-Google_2015_logo.svg.png';
var name = 'Google Logo.png';
xhr.open('GET', url, true);
xhr.responseType = 'blob';
xhr.onprogress = function(e) {
    if (e.lengthComputable) {
        console.log( ((e.loaded / e.total) * 100) + '%');
    }
};
xhr.onload = function() {
    if (this.status === 200) {
        var file = this.response;
        saveAs(file, name);
        console.log('File Saved!!!')
    }
};
xhr.onerror = function(e) {
    alert("Error " + e.target.status + " occurred while receiving the document.");
};
xhr.send();