【发布时间】:2013-12-14 08:58:42
【问题描述】:
如何将服务器中的文件下载到访问 nodeJS 服务器中页面的机器上?
我正在使用 ExpressJS,我一直在尝试这个:
app.get('/download', function(req, res){
var file = fs.readFileSync(__dirname + '/upload-folder/dramaticpenguin.MOV', 'binary');
res.setHeader('Content-Length', file.length);
res.write(file, 'binary');
res.end();
});
但我无法获取文件名和文件类型(或扩展名)。谁能帮我解决这个问题?
【问题讨论】:
-
仅供参考。在生产中使用,你最好在 nginx 后面使用 node.js,并让 nginx 处理静态内容。显然,它更适合处理这个问题。
-
赞成票证明不存在愚蠢的问题 :)
-
@user2180794 但是有这样的事情。许多其他被标记和否决的问题就是证明。这个问题肯定不是一个。它符合准则:)
-
您指出的问题不同,这里 OP 希望将文件返回给客户端,而另一个问题是关于如何使用服务器节点作为客户端下载文件(例如来自第三方)。至少我是这么理解的。
标签: javascript node.js file express download