我正在测试res.sendFile(src);
和fs.createReadStream(src).pipe(res);
的下载速度,我看不出太大差异。哪个更好地提供文件,为什么?如果我有大量文件,流会更好地处理它吗?
答案 0 :(得分:9)
我会选择使用res.sendFile()
。
最终,res.sendFile()
将流传输到res
,因此在这方面它们基本相同。
然而,res.sendFile()
做了一些额外的事情,比如根据文件名设置正确的HTTP Content-Type
标头,并且因为它使用了send
库,它可以(可能,我还没有对此进行测试)处理部分响应并进行内容协商。