Я новичок в Node JS и Socket IO, но я слышал о них много хорошего, поэтому я хотел взглянуть на них для использования в качестве системы уведомлений в реальном времени.
В моем сценарии пользователь откроет сокет для прослушивания уведомлений, отправленных пользователю — каждый пользователь откроет соединение со своими СОБСТВЕННЫМИ уведомлениями, а не с «общедоступным» каналом.
var jug = new Juggernaut;
var channel = "/user/" + userId + "/notifications";
jug.subscribe(channel, function(data){
console.log("Got data: " + data);
});
Так что почти во всех случаях на 1 канал будет подписан 1 пользователь.
У меня есть 2 опасения:
- Все примеры Juggernaut, которые я видел, включают в себя несколько клиентов, подписывающихся на 1 канал — это заставляет меня думать, что он не предназначен для использования для общения 1-1.
- Есть ли способ добавить аутентификацию, чтобы только указанные пользователи получали сообщение (IE, в настоящее время вошедший в систему пользователь - единственный, кто может подписаться на свой канал уведомлений). Если бы был способ передать дополнительные данные при подписке, этого, вероятно, было бы достаточно (может быть, хешировать идентификатор пользователя и использовать его в качестве токена?).
Есть ли у кого-нибудь опыт работы с Juggernaut, который мог столкнуться с этим сценарием раньше?