从服务器向客户端发送文件

时间:2015-08-23 09:33:03

标签: javascript node.js rest

我使用一个接受文件作为其参数之一的库,它使用类似

的东西
<input type="file" id="file" name="files"/> 

获取所需文件。现在,我想要的是通过其他API将我的node.js服务器上的文件发送到客户端:

$.get ('/getfile', function(data) {
    reader = new FileReader();
    reader.onload = function(theFile){
        //some code here
    };
    reader.readAsText(f); 
});

但是,如果我在服务器端使用这样的东西:

app.get('/getfile', function (req, res) {
    var pathx = 'path to file';
    res.download(pathx);
}); 

当它到达客户端时,它不会将其视为文件,而是将变量数据视为包含文件内容的文件。如何将文件发送到客户端,以便客户端仍然可以将其视为文件。

1 个答案:

答案 0 :(得分:0)

我无法发表评论,所以需要写一个答案。 $ .get call是客户端代码的一部分,对吧? 并且您想使用jQuery下载文件。

然后有2个部分。 1.您需要在正确提供文件的服务器上设置方法(标头设置等)。打开浏览器并转到该地址。应该发生什么是您的浏览器下载文件。如果没有,则需要先解决此问题。

  1. 然后,您使用jQuery下载文件,让您的客户端进行一些调用。如何执行此操作,您可以在Download File Using jQuery
  2. 等其他答案中找到

    现在,您能否说一下您是否已成功完成第1步?