📅  最后修改于: 2023-12-03 15:11:44.681000             🧑  作者: Mango
本文是关于 Node.js 的测验题,共计 15 道题目,本文为第 3 组,第 14 道题目。该题目旨在测试程序员对于 Node.js 中 TCP Socket 的理解与应用。
请编写一个 Node.js TCP Socket 服务器,监听 127.0.0.1:8080
端口,接收客户端发送过来的消息,并将该消息通过控制台输出。
const net = require('net');
const server = net.createServer((socket) => {
console.log('Client connected');
socket.on('data', (data) => {
console.log(`Message received: ${data}`);
});
socket.on('end', () => {
console.log('Client disconnected');
});
});
server.on('error', (err) => {
throw err;
});
server.listen(8080, '127.0.0.1', () => {
console.log('Server listening on 127.0.0.1:8080');
});
首先,我们通过 require('net')
引入了 Node.js 内置的 net
模块。
然后,我们使用 net.createServer()
创建了一个 TCP Socket 服务器,并实现了 connection
事件回调函数。
在 connection
事件回调函数中,我们监听了 socket
的 data
事件和 end
事件,并在 data
事件回调函数中输出客户端发送过来的消息,而在 end
事件回调函数中输出客户端断开连接的消息。
接着,我们使用 server.listen()
开启监听,并在回调函数中输出开启成功的消息。