[英]how to get the socket instance from socket id in socket.io
I want to find the socket instance using the socket id我想使用套接字 id 找到套接字实例
I saw a solution on stackoverflow and tried it, but it didn't work.我在stackoverflow上看到了一个解决方案并尝试了它,但是没有用。 Make specific socket leave the room is in
使特定套接字离开房间所在的位置
exports.removeParticipant = ({ data }) => {
const { roomId, toBeRemovedSocketId } = data;
const roomFound = rooms.find((room) => room.id === roomId);
if (roomFound) {
const user = roomFound.connectedUsers.find(
(user) => user.socketId === toBeRemovedSocketId
);
/* Removing the user from the room.connectedUserArray . */
roomFound.connectedUsers = roomFound.connectedUsers.filter(
(user) => user.socketId !== toBeRemovedSocketId
);
//i tried this but it throws error
let socket = io.sockets.connected[toBeRemovedSocketId];
socket.leave(roomId);
}
my own research led me to a solution.我自己的研究使我找到了解决方案。
let socket=io.sockets.sockets.get(toBeRemovedSocketId);
socket.leave(roomId)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.