0

我正在使用 Express,我需要从服务器下载文件。我可以很容易地下载它<a href="mylink"></a>,但是有一些查询参数,我想对用户隐藏。

所以现在我正在尝试使用 jQuery.ajax 向 Express (srv1) 发送请求,然后 Express 将带有我的参数的请求发送到另一台服务器 (srv2)。服务器用“Content-disposition”标头和文件数据响应我。没关系。还有一个问题 - 我可以使用该文件并用它来响应我最初的 ajax 请求吗?

问题是,即使res.download()有文件(已经在我的 srv1 上)也不起作用。Express 很好地设置了标题,但没有文件提示下载。也许ajax中有问题?

4

1 回答 1

5

您不能使用 javascript ajax 请求使浏览器执行文件下载(这是一个安全限制)。有关详细信息,请参阅https://stackoverflow.com/a/9970672/266795。您需要一个普通的浏览器 GET 或 POST 请求来获得正确的文件保存对话框。

于 2013-09-10T16:34:37.933 回答