如果您只是将“数据”连接到“ write()”,将“关闭”连接到“ end()”,则是一种更好的方法:
// 0.3.x style
fs.createReadStream(filename, {
'bufferSize': 4 * 1024
}).pipe(response)
// 0.2.x style
sys.pump(fs.createReadStream(filename, {
'bufferSize': 4 * 1024
}), response)
“ read.pipe(write)
或” sys.pump(read, write)
方法的好处还在于增加了流量控制。因此,如果写入流不能尽快接受数据,它将通知读取流回退,以最大程度地减少缓冲在内存中的数据量。
在flags:"r"
和mode:0666
由事实,这是一个暗示FileReadStream
。该binary
编码已过时- 如果没有指定编码,它会刚刚与原始数据缓冲区的工作。