gpt4 book ai didi

javascript - 在 Socket.io 中创建房间

转载 作者:IT老高 更新时间:2023-10-28 21:55:59 31 4
gpt4 key购买 nike

我想寻求您的帮助。我在 socket.io 的客户端遇到了困难,我想在客户端调用此代码以在 socket.io 中创建一个房间:

var rooms = [];
socket.on('create', function (roomname) {
rooms[room] = room;
socket.room = roomname;
socket.join(roomname);
subscribe.subscribe(socket.room);
});

我不知道这是否正确,如果不是,请帮助我纠正这些人。我对 Node js 和套接字不是那么专业,但我已经阅读了他们的 wiki。有没有可能的方法来创建房间?

最佳答案

Socket.IO 中的房间不需要创建,当一个套接字加入它时会创建一个。它们是在服务器端加入的,因此您必须使用客户端来指示服务器。

socket.on('create', function (room) {
socket.join(room);
});

在上面的示例中,使用变量 room 中指定的名称创建了一个房间。您不需要将这个房间对象存储在任何地方,因为它已经是 io 对象的一部分。然后,您可以将房间视为自己的套接字实例。

io.sockets.in(room).emit('event', data);

所以要从客户端创建一个房间,它可能看起来像这样:

// client side code
var socket = io.connect();
socket.emit('create', 'room1');

// server side code
io.sockets.on('connection', function(socket) {
socket.on('create', function(room) {
socket.join(room);
});
});

关于javascript - 在 Socket.io 中创建房间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19150220/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com