socket.io 上线和下线

 

3.js

var http = require('http');
var io = require('socket.io');

var server = http.createServer((req,res)=>{

});
server.listen(2183);
// 监听服务器,有哥们儿连接过来了,参数就是连接的哥们儿(就是user)
io.listen(server).on('connection',(user)=>{
	//除了自己,其它都能收到
	user.broadcast.emit('msg','有人上线了')

	user.on("msg",(str)=>{
		//除了自己,剩下所有在线的人发送消息
		user.broadcast.emit('msg',str);
		//加上它我自己也能收到,只有user.broadcast.emit,不加user.emit,自己收不到
		user.emit('msg',str);
	});

	//下线了,断开连接了
	user.on('disconnect',()=>{
		user.broadcast.emit('msg','有人下线了!')
	});

});

  2.html

<!doctype html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <script type="text/javascript" src='http://localhost:2183/socket.io/socket.io.js'></script>
    <title></title> 
    <script type="text/javascript">
    	onload=()=>{
    		let conn=io.connect('ws://localhost:2183');
            //点击的时候,向服务发送数据
    		b.onclick = x=>{
    			conn.emit('msg',t.value)
    		};
            //后台传过来的数据,我前台接受下 conn.on()
    		conn.on('msg',(str)=>{
    		//	console.log(str);
    			var oLi = document.createElement('li');
    			oLi.innerHTML = str;
    			ul.appendChild(oLi);
    		})

    	}
    </script>
</head>
<body>
<input type="text" name="" id='t'>
<button id='b'>发送</button>
<ul id='ul'></ul>
</body>
</html>

  

posted @ 2019-05-24 11:28  来阿里啊呀  阅读(457)  评论(0)    收藏  举报