AngularJS:模拟URL单击并重命名要下载的文件

时间:2018-09-17 14:12:17

标签: html angularjs file angularjs-directive download

我有这个仪表板(在angularjs中),您可以在其中看到通过自定义服务上传的一些文件。在接口中,每个对象都有其自己的file_id属性。我使用的服务可以基于此ID生成URL以下载文件,但是只能使用15分钟(这很不方便,但是我必须使用它)。

我做了以下操作:当我单击界面中的Download按钮时,我在后端调用服务,该服务每次都会生成一个新的URL,然后将其发送到前端。

在这里,我正在尝试使用以下代码来模拟对该链接的点击:

var downloadLink = document.createElement('a');
document.body.appendChild(downloadLink);
downloadLink.setAttribute('download', 'result.' + fileExtension);
downloadLink.setAttribute('href', downloadURI);
downloadLink.click();

下载正常,但文件名不是所需的文件名(它是一个随机字符串-实际上是服务正在使用的哈希-没有扩展名),并且可能欺骗没有经验的用户。

我可以为此做点什么吗?有没有更好的方法来实现这一目标? 谢谢!

0 个答案:

没有答案