Nodejs - 编写和保存文件

时间:2014-08-25 19:11:40

标签: node.js express

我正在调查如何将文件下载到用户的本地计算机,但我不太确定我需要做什么。我在前端使用Nodejs和Express with Angularjs。

用户可以将文本写入文本区域,这是将写入文件的文本。

要做到这一点,我有:

...
fs = require('fs');
fs.writeFile('filename.txt', textarea.text, function (err) {
  if (err) return console.log(err);
  res.send(200);
});
...

创建文件后,如何在用户的machinea上下载?

2 个答案:

答案 0 :(得分:2)

使用res.download

res.download('filename.txt');

http://expressjs.com/4x/api.html#res.download

答案 1 :(得分:0)

如果您不需要将文件存储在服务器上,您可以直接将其发送回用户:

res.attachment('filename.txt');
res.set('Content-Type', 'text/plain');
res.send(textarea.text);

这不仅更简单,而且还提高了性能(无磁盘i / o)和更安全(服务器上没有不受信任的文件)。

相关问题