【问题标题】:Download file using url doestwork JavaScript使用 url dotwork JavaScript 下载文件
【发布时间】:2020-10-07 15:45:59
【问题描述】:

我需要按一个按钮开始下载,我尝试使用以下代码,但它没有开始下载,只需在浏览器中打开一个新标签并显示内容。我做错了吗?

dataurl 类似于:http://localhost:8000/storage/shipment/b61ffc10-6798-4b94-ba91-daec6efbbdfdShipment2020-10-05.txt

  download: function(name, dataurl) {
      const link = document.createElement("a");
      link.setAttribute("download", name+'.txt');
      link.setAttribute("target", "_blank")
      link.href = dataurl;
      document.body.appendChild(link);
      link.click();
    }

我也尝试将 url 转换为 Blob

      const url = window.URL.createObjectURL(new Blob([data]));
      const link = document.createElement("a");
      link.href = url;
      link.setAttribute("download", filename);
      document.body.appendChild(link);
      link.click();
    },

这样,它触发了下载,但内容是 url,而不是文件本身。

有什么想法吗?谢谢!

【问题讨论】:

    标签: javascript html vue.js


    【解决方案1】:

    如果你想从你的服务器下载内容,试试这个,它很简单...

    <a href="http://localhost:8000/storage/shipment/b61ffc10-6798-4b94-ba91-daec6efbbdfdShipment2020-10-05.txt" download="filename-here"> Click here to Download </a>
    

    在&lt;a&gt;标签中添加Download属性,当点击此链接时,文件将下载为filename-here.txt

    【讨论】:

    • 如果您查看问题 OP 已经在以编程方式设置下载属性
    • 我已经试过了,但是下载属性不起作用。我必须建立一个新的网址才能让它工作,我不知道为什么会发生这种情况
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-08
    • 2013-12-23
    • 2018-11-02
    • 2010-09-25
    • 2020-10-24
    • 2021-12-18
    • 2015-04-07
    相关资源
    最近更新 更多