В socket.io вы обычно используете определенный синтаксис на стороне сервера , если вы хотите отправить сообщение в определенную комнату: io.to(room).emit('event', 'message');
.socket.io: отправить сообщение в определенную комнату (на стороне клиента)
Но как будет клиент (что я имею в виду, это код, связанный с socket.io, запущенный в браузере) указывает, что сообщение должно идти в определенную комнату?
Есть ли общие просто создать что-то вроде этого (конечно сервер должен оценить его):
socket.emit('chat message', {room: 'abc', msg: 'hello there'});
Или же socket.io на сторону клиента библиотека предлагает конкретный синтаксис для этой цели, а также ?
изменить: уточнить, мое предложение сверху работает, я просто не уверен, есть ли лучшее решение.
AFAIK использование помещений и пространства имен является рекомендация socket.io http://socket.io/docs/server-api/ HTTP: // socket.io/docs/rooms-and-namespaces/ – Pogrindis
Они предлагают использовать 'multiplexing', http: // socket.io/docs/# restricting-yourself-to-a-namespace Хотя это пространство 'namespace' не' rooms', но это может помочь в аналогичном сценарии. – Ankit
@Pogrindis Спасибо, я знаю об этом, и я использую концепцию комнат на стороне сервера. Боюсь, мой вопрос недостаточно ясен. Мне интересно, как приложение на стороне клиента (например, чат на основе angular.js с использованием socket.io) может сообщить серверу socket.io, в какую комнату должно идти сообщение. – alapeno