首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Iron-ajax下载文件

Iron-ajax下载文件
EN

Stack Overflow用户
提问于 2017-02-17 22:41:55
回答 3查看 1.5K关注 0票数 2

我想用Polymer的Iron-Ajax下载文件。

代码语言:javascript
复制
<iron-ajax
  id="fileDownloader"
  headers='{"Auth" :"token"}'
  url="/my/server/rest/download/csv/{{id}}"
  method="GET"
  content-type="application/json"
  on-response="downloadCsvCallLoaded"
  on-error="downloadCsvCallFailed">
</iron-ajax>

reposnse实际上包含数据,但它不会触发浏览器下载文件。

EN

回答 3

Stack Overflow用户

发布于 2017-02-17 23:16:38

我认为你需要在你的元素声明中使用handle-as="blob"属性。Here你可以找到更多关于它的信息。

票数 1
EN

Stack Overflow用户

发布于 2017-10-27 22:11:27

为了将blob作为文件进行流式传输,您可以通过以下链接使用FileSaver.js:enter link description here

票数 1
EN

Stack Overflow用户

发布于 2018-01-16 00:36:44

你似乎正在尝试下载一个CSV,这是我用过的一个变通方法,似乎在Chrome和Safari上运行得很好。它是关于下载数据,然后使用一个作为URI的嵌入式data:text使用一个虚拟的<a>来触发一个下载。JS下载功劳归How to export JavaScript array info to csv (on client side)?所有。

代码语言:javascript
复制
ironAjax.addEventListener("response", (event) => {
    let csvContent = "data:text/csv;charset=utf-8," + event.detail.response;
    var encodedUri = encodeURI(csvContent);
    var link = document.createElement("a");
    link.setAttribute("href", encodedUri);
    link.setAttribute("download", "filename.csv");
    document.body.appendChild(link); // Required for FF
    link.click(); // This will download the data file named "my_data.csv".
    document.body.removeChild(link);
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42300657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档