Я пытаюсь отправить массив с сервера, который содержит все идентификаторы пользователей, когда кто-то подключается на сервере с помощью сокета io. По-видимому, излучающая часть работает нормально, но принимающая часть вообще не реагирует.Функция не работает с Socket.io
io.sockets.on('connection',
// here's the on connection event
function (socket) {
i++;
ids[i]=socket.id;
console.log("We have a new client: " + ids[i]);
socket.broadcast.emit('setid', ids);
}
/////that is the emitting part
Теперь это приемная часть:
socket.on('setid',
function(ids) {
console.log(ids);
}
);
Ваш код в порядке, покажите нам весь код клиента, пожалуйста. Вы уверены, что клиент не получает массив? – mk12ok
Я обновил свой ответ @ mk12ok Собираюсь быстро создать фиктивный проект, чтобы проверить его, хотя я уверен, что это должно сработать. –
Вполне нормально отправлять массив 'ids'. Ваше решение по отправке объекта '{idArr: ids}' будет работать, но почему все осложняется? – mk12ok