node.jsでTCP通信をする方法を調べていると
- cilent側で文字を入力して
- それをserver側で折り返して
- それをclient側でコンソールに表示
というサンプルが山ほど見つかるのですが、
- server側で文字を入力して
- それをclient側で折り返して
- それをserver側でコンソールに表示
という例が見つからなかったので、書いてみました。
server.js
varnet=require('net');varserver=net.createServer(conn=>{console.log('connected.');conn.on('data',data=>{console.log('server-> '+data);});conn.on('close',()=>{console.log('closed');});process.stdin.resume()process.stdin.on('data',data=>{conn.write(data)});}).listen(3000);console.log('listening on port 3000');
client.js
varnet=require('net');varclient=newnet.Socket();client.setEncoding('utf8');client.connect('3000','localhost',()=>{console.log('connected');});client.on('data',data=>{console.log('client-> '+data);client.write(data);});client.on('close',()=>{console.log('closed');});
以上です
参考
https://nodejs.org/api/net.html#net_net_createserver_options_connectionlistener