#html #node.js #socket.io
#HTML #node.js #socket.io
Вопрос:
Я хотел бы создать веб-страницу с интерактивным контентом.
Я хотел бы использовать socket IO, но у меня проблема, когда я отправляю два числа с клиента на сервер.
Сервер добавляет два числа и отправляет для каждого пользователя (но я хочу просто отправить обратно одному пользователю). Я бы не хотел хранить пользователей. Итак, я хотел бы спросить, как я могу создать этот пример, используя NodeJS и Socket IO?
Комментарии:
1. но метод широковещательной рассылки не подходит для меня, потому что отправляет сообщение всем остальным, кроме меня. но я хочу отправить только сервер и хочу отправить данные для меня обратно, я не хочу отправлять данные всем.
Ответ №1:
если вы заглянете в socket.в документах io вы обнаружите, что вы можете указать key
для каждого отправляемого вами сообщения, например:
io.on('connection', function (socket) {
// specify a clientId for each client you have, you may define it at the moment the connection starts.
socket.emit(`news:${clientId}`, { hello: 'world' });
});
И на стороне клиента у вас есть:
socket.on(`news:${myClientId}`, function (data) {
console.log(data);
});
Вы можете сгенерировать это id
случайным образом, используя множество библиотек, например Node-Forge.
Надеюсь, это поможет! Не стесняйтесь спрашивать дальше.