nodejs TCP server和TCP client如何进行数据交互

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/i042416/article/details/87783837

使用Jerry之前的文件成功建立服务器端和客户端的TCP连接后,客户端得到一个client实例:

async function startClient(ip = configJson.TCP.client.ip, port = configJson.TCP.client.port) {
	client = new net.Socket();
	await client.connect(port, ip, () => {
      console.log(" in tcpclient.js connect callback!!!");
	});
}

客户端向服务器端发送消息的方法:

clipboard1

function sendMessage(_message) {
	log.info('Jerry TCP Client sending message: ' + JSON.stringify(_message));
        client.write(JSON.stringify(_message))
}

服务器端接收代码:

server = net.createServer(function (socket) {

  sender = socket.remoteAddress + ":" + socket.remotePort

  clients.push({
    id: sender,
    socket: socket,
    group: "",
    subscription: false,
    name: ""
  });
);

这个输入的参数socket代表了客户端和服务器端的连接connection

解析客户端发送过来的数据:

  socket.on('data', (data) => {
    try {
      try {
         _json = JSON.parse(data);
         log.info('Jerry incomming data from TCP Client: '+JSON.stringify(_json,2,2))
    }
    // 异常处理略过
}

看下运行时的日志:

客户端发送的数据,value为689
clipboard2

服务器端正确得解析出来了:
clipboard3

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

猜你喜欢

转载自blog.csdn.net/i042416/article/details/87783837
tcp
今日推荐