
234
|
附錄 A Node.js
可寫入的串流,會在 Node.js 虛擬機器允許時,執行
write
函式。讓我們加入此一函式:
ws.write = function(data) {
console.log("input=" + data);
}
ws.end = function(data) {
console.log("bye");
}
最後,使用管道(pipe),把命令列的輸入,導向到串流:
process.stdin.pipe(ws);
使用串流時,就如同為資料建立輸出源頭與輸入去處。舉例而言,你可以
運用「管道」,從可讀串流把事件轉向到可寫入的串流,此種連接串流的
方式,類似於 Unix 的管線(pipe)機制,非常強而有力,極為好用。
簡單測試一下,看看是否正常:
$ node pipe_out.js
hello
input=hello
你還可以把檔案的輸出,以管道轉向到可寫串流,如下:
$ echo hello | node pipe_out.js
input=hello
bye
命令列、網路傳來的請求、從序列埠接收的資料,都是以串流為基礎打造出來的功能。