在Node.js网络中使用pipe()

我很难pipe理解net模块的几个Node.js示例中显示的功能。

var net = require('net');

var server = net.createServer(function (socket) {

socket.write('Echo server\r\n');

socket.pipe(socket);

});

任何人都可以提供有关其工作原理以及为什么需要这样做的解释吗?

回答:

pipe()功能从可读流中读取可用的数据,并将其写入目标可写流。

文档中的示例是回显服务器,它是发送接收到的信息的服务器。该socket对象同时实现了可读和可写的流接口,因此它会将接收到的所有数据写回套接字。

这等效于使用pipe()使用事件侦听器的方法:

var net = require('net');

net.createServer(function (socket) {

socket.write('Echo server\r\n');

socket.on('data', function(chunk) {

socket.write(chunk);

});

socket.on('end', socket.end);

});

以上是 在Node.js网络中使用pipe() 的全部内容, 来源链接: utcz.com/qa/424566.html

回到顶部