从具有不同文件名的URL下载文件

时间:2019-10-19 14:23:51

标签: javascript

我使用 JavaScript

具有以下功能

后端为我提供了一个URL,可从下面下载文件-

https://something.org/FILENAME.ZIP 

所以我的文件名固定为 FILENAME.ZIP

但是在下载文件时,应使用自定义文件名(例如 CUSTOMFILENAME.ZIP )而不是 FILENAME.ZIP

所以

1)应从URL https://something.org/FILENAME.ZIP

下载文件

2)但是应该使用其他文件名将其保存为: CUSTOMFILENAME.ZIP

3)我已经尝试通过url-how to download a file from url using javascript or jquery?

下面的程序
var a = document.createElement("a");
a.href = url;
var fileName = CUSTOMFILENAME;
a.download = fileName;
document.body.appendChild(a);
a.click();
window.URL.revokeObjectURL(url);
a.remove();

但是仍然使用 URL中提到的任何文件名

下载文件

有人可以在这里帮助我吗?

文件应保存为我提供的 CUSTOMFILENAME ,而不是指定的文件名作为 URL的一部分

2 个答案:

答案 0 :(得分:0)

您要提供一个对象,下载名称应提供一个字符串

答案 1 :(得分:0)

尝试一下是否可行

  const documentName = CustomFileName // here your file name 

fetch(
      "http: url     // here your url
      {
        method: "GET"
      }
    )
      .then(res => {
        return res.blob();
      })
      .then(blob => {
        const href = window.URL.createObjectURL(blob);
        const a = document.createElement("a");
        a.download = documentName;
        a.href = href;
        a.click();
        a.href = "";
      })
      .catch(err => console.error(err));