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

使用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!!!");
	});
}

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

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

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励