//第二种写法
var net = require('net');
//创建tcp服务器
var server = net.createServer((socket) => {
socket.on('data', (data) => {
console.log(data.toString(), 'data..')
})
});
//设置监听端口
server.listen(8989, (res) => {
console.log('in listen...')
});
除了listening和connect事件外,server还有如下事件:
close:TCP服务器关闭的时候触发,回调函数没有参数
error:TCP服务器发生错误的时候触发,回调函数的参数为error对象
接收数据和发送数据
通过socket的data事件接收数据,write方法发送数据
socket.write(data[, encoding][, callback])
//创建一个TCP服务器
var server = net.createServer((socket) => {
//'connect'事件的回调函数
console.log('客户端已连接');
socket.on('end', () => {
console.log('客户端已断开');
})
//接收来自客户端的数据
socket.on('data', (data) => {
console.log(data.toString(), 'data');
var readSize = socket.bytesRead;
console.log('the size of data is ' + readSize);
})
//向客户端写入数据
socket.write('hello\r\n');
//设置连接最大数量,可不设
server.maxConnection = 3;
server.getConnections(function (err, count) {
console.log('the count of clieent is ' + count);
});
})
server.listen(8989, () => {
console.log('服务器已启动');
//获取地址信息
var address = server.address();
//获取地址端口
console.log('the port of server is ' + address.port);
console.log('the address of server is ' + address.address);
console.log('the ip family of server is ' + address.family);
})