在node.js中,如果使用createReadStream(),你仍然需要response.end()

时间:2012-10-04 08:25:03

标签: javascript node.js

node.js doc

response.end([data],[encoding])

此方法向服务器发出信号,表示已发送所有响应标头和正文;该服务器应该考虑此消息完成。必须在每个响应上调用方法response.end()。

但在使用createReadStream给出的许多示例中,例如,

 fs.createReadStream(filename,{...}).pipe(response)
我从未见过response.end()来电。

resonse.end()需要createReadStream()吗?并且,如果是这样,它在程序流程中出现在哪里 - 在管道完成之前你不希望它被调用,对吗?

1 个答案:

答案 0 :(得分:2)

阅读完成后response.end() end事件或您遇到错误(error事件)。

选中此示例:http://elegantcode.com/2011/04/06/taking-baby-steps-with-node-js-pumping-data-between-streams/

相关问题