我正在测试使用res.sendFile(src);
和fs.createReadStream(src).pipe(res);
下载速度,但我没有看到太大的区别。哪个更好地提供文件服务?如果我有巨大的文件,使用流处理是否更好?
我建议使用 res.sendFile()
。
实际上,res.sendFile()
将流传输到 res
,因此在这方面它们基本相同。
然而,res.sendFile()
做了一些额外的事情,例如根据文件名设置适当的 HTTP Content-Type
头部,并且由于它在底层使用了 send
库,它可以(可能,我没有进行测试)处理部分响应并进行内容协商。
res.sendFile()
,它也能很好地管理。 - Honchar Denys