nodejs创建TCP服务器

说明:创建环境centos7

主要步骤

1. 使用net模块创建TCP服务器

2. 使用telnet连接TCP服务器

3. 使用net创建TCP客户端

注意:步骤2和步骤3任选其一即可

正文

1.使用net模块创建TCP服务器

新建项目文件夹

新建tcp.js文件

var net = require('net');

const PORT = 18001;
const HOST = '127.0.0.1';


var clientHandler = function(socket){

    //客户端发送数据的时候触发data事件
  socket.on('data', function dataHandler(data) {//data是客户端发送给服务器的数据
    console.log(socket.remoteAddress, socket.remotePort, 'send', data.toString());
        //服务器向客户端发送消息
    socket.write('server received\n');
  });

    //当对方的连接断开以后的事件
  socket.on('close', function(){
    console.log(socket.remoteAddress, socket.remotePort, 'disconnected');
  })
};

//创建TCP服务器的实例
//传入的参数是:监听函数clientHandler
var app = net.createServer(clientHandler);

app.listen(PORT, HOST);
console.log('tcp server running on tcp://', HOST, ':', PORT);

clientHandler工作原理:

//当创建tcp服务后,把clientHandler添加到connection事件中

//connection在当有客户端连接到服务器的时候触发

//当connection触发以后,会执行clientHandler

//传入的参数是socket实例

node tcp.js             //启动服务器端

2.使用telnet连接TCP服务器

新建命令行窗口

yum install telnet      //安装telnet
telnet localhost 18001  //用telnet进行连接,启动客户端

3.使用net创建TCP客户端

新建tcpClient.js文件

var net = require('net');

const HOST = '127.0.0.1';
const PORT = 18001;

var tcpClient = net.Socket();

tcpClient.connect(PORT, HOST, function(){
   console.log('connect success.');
   tcpClient.write('this is tcp client by Node.js');//服务器向客户端发送消息
});

//监听服务器端发过来的数据
tcpClient.on('data', function(data){
   console.log('received: ', data.toString());
});
node tcpClient.js             //启动客户端

猜你喜欢

转载自blog.csdn.net/sctec/article/details/78966209