nodejs文件下载

delete_memory 发布于 2014/03/27 20:12
阅读 4K+
收藏 0
求助!nodejs中文件下载怎么实现?我的代码返回的是文件内容,好像被当成text解析了,我的代码如下:
res.setHeader('Content-disposition', 'attachment; filename=' + fileName);
res.setHeader('Content-type', mimetype);
var fstream = fs.createReadStream(fullPath);
fstream.on('data',function(filebody){
     res.write(filebody);
});
fstream.on('end', function() {
    console.log("end");
    res.end(); });
fstream.on('error',function(err){
    console.log(err);
})



加载中
0
jQer
jQer

fs.createReadStream(fullPath).pipe(res);

读流太快,写流太慢,多余的内容会被内存扔掉.

on(data)时候要pause一些读流,等write完drain刷新读流. 最简单就是用封装方法pipe.

返回顶部
顶部