首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Ember中AJAX Post后没有文件下载

在Ember中AJAX Post后没有文件下载
EN

Stack Overflow用户
提问于 2015-07-15 19:16:52
回答 1查看 2K关注 0票数 3

我有一个AJAX请求位于我的余烬控制器中,位于一个Node.js服务器上:

代码语言:javascript
复制
$.ajax({
          type: "POST",
          url: "https://localhost/api/report",
          contentType: "application/json",
          data: payload,
          headers: {"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
                    "Cache-Control": "no-cache",
                    "Pragma": "no-cache"
                    }
        });

Post请求成功,并返回响应标头:

代码语言:javascript
复制
Access-Control-Allow-Origin:*
Connection:keep-alive
Content-Disposition:attachment; filename="report.pdf"
Content-Type:application/pdf
Date:Wed, 15 Jul 2015 19:11:23 GMT
File-Extension:pdf
Number-Of-Pages:1
Transfer-Encoding:chunked
Vary:Origin
X-Powered-By:Express
X-XSS-Protection:0

此响应应在浏览器中启动文件下载,但不会发生任何情况。我已经从我的Ember应用程序外部对同一个位置测试了相同的请求,并且它成功地启动了下载。

我的要求/答复有什么问题?我是不是走错路了?

EN

回答 1

Stack Overflow用户

发布于 2015-07-15 20:46:26

这不是Ember的问题,而是javascript的问题。您不能发出像这样启动文件下载的ajax请求。但是,您可以创建一个iframe,一个表单,将文章发送到iframe,这反过来会触发文件下载。

请参见:

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31439167

复制
相关文章

相似问题

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