如何使用fs.readFile提供读取的文件

时间:2014-12-03 13:31:57

标签: node.js file download

我正在使用nodejs开发一个应用程序。我必须在服务器上读取本地文件,我正在使用此功能:

fs.readFile(path, "utf8", function (err,data) {}

我如何向客户提供'数据'?最好在新标签页中打开它或在客户端下载。

- UPDATE-- 我也试图使用这个解决方案..这是一个好方法吗?

res.writeHead(200, {"Content-Type": "application/pdf"});
res.write(data);
res.end();

1 个答案:

答案 0 :(得分:2)

假设您在此处使用某种HTTP服务器,您将在处理程序中收到response个对象。该对象实际上是一个流。我在这里使用内置节点HTTP服务器作为我的例子。

http.createServer(function(req, res){
    fs.createReadStream(path).pipe(res);
});

如果您使用的是expresshapi,则会有一个特定的发送文件响应类型:

哈皮:reply.file

快递:res.sendFile