1. 程式人生 > >node實現通訊

node實現通訊

實現通訊則必須有客戶端和伺服器

建立一個伺服器:

var net = require("net")

var server = new net.createServer()

var i =0;

var obj = new Object()

server.on("connection",(client)=>{
	client.name = ++i;
	obj[client.name] = client;
	client.on('data',(data)=>{
		console.log("客戶端:"+data.toString())
		huifu(data,client)
	})

})

function huifu(message,client){
//	client.write("收到了")

    for (var i in obj) {
    	obj[i].write(client.name+":"+message)
    }
}

server.listen(3000)

 

建立一個客戶端,這裡的客戶端叫socket:

var net = require("net")

var client = new net.Socket()

var readline = require("readline")

var port = 3000

var hostname = 'localhost'

client.connect(port,hostname,()=>{
	
	client.write("我上線了")
	
})

client.on("data",(data)=>{
	console.log("伺服器發來:"+data.toString())
	say()
})


var r1 = new readline.createInterface({
	input:process.stdin,
	output:process.stdout
})

function say(){
	r1.question("",(str)=>{
		client.write(str)
	})
}