サンプルプログラム4 (NP JavaScript編)

C/S型の文字転送

サーバ

const port=((process.argv[2] && parseInt(process.argv[2])) || 9999)
const net=require('net')
const server=net.createServer((sock)=>{
  console.log('socket created')
  sock.on('data',(data)=>process.stdout.write(data.toString()))
  sock.on('close',()=>console.log("closed"))
}).listen(port)
console.log(`listening on port ${port}`)

クライアント

const host=(process.argv[2] || 'localhost')
const port=((process.argv[3] && parseInt(process.argv[3])) || 9999)
const net=require('net')
const sock=new net.Socket()
sock.connect(port,host,()=>{
  console.log(`connected to ${host}:${port}`)
  sock.write("hello I'm client\r\n")
})
process.stdin.resume();
process.stdin.on('data',(data)=>sock.write(data))