socket.io 连接与断开连接

1. 服务端

监听connection 事件

io.sockets.on('connection', (socket) => {
    
    
    console.log("connection socket:", socket.handshake.query.username)
	
	// 监听断开事件
	socket.on('disconnect', (reason) => {
    
    
            console.log("disconnect reason ", reason)
            //userMap.delete(socket.handshake.query.username)
    })
}

这里通过socket.handshake.query 可以查看一些请求参数,对连接做一些限制,不符合条件的就拒掉

2. 客户端

var username = document.querySelector('input#username')
// connect
socket = io.connect('', {
    
     query: "username=" + username.value });

// 30 秒后主动断开连接
setTimeout(function () {
    
    
        socket.disconnect()
    }, 30000)

io.connect 接口,第一个参数是请求url,第二个参数是相关参数,这里携带用户名

猜你喜欢

转载自blog.csdn.net/zjoops1314/article/details/126652737