Показать сообщение отдельно
  #1 (permalink)  
Старый 27.05.2021, 12:33
Аспирант
Отправить личное сообщение для HotReboot Посмотреть профиль Найти все сообщения от HotReboot
 
Регистрация: 06.11.2017
Сообщений: 42

Socket ws и индивидуальное сообщение
Здравствуйте. Не могу сообразить как отправить сообщение конкретному пользователю. В интернете сплошные чаты с примерным кодом отсылки сообщения
for (let u of users) {
    u.connection.send(message)
}

Я думал как: во-первых при подключение юзера посылает строку типа
webSocket.onopen = function(){
    webSocket.send(`sessionId:${user}`)
};

и записать на сервере в redis соответственно
client_redis.set(sessionId, JSON.stringify(user), redis.print)

что бы потом прочитать данные по соединению. Но получилось, что JSON.stringify далеко не весь объект преобразует в JSON и теряет его часть. А array.push и map.set не заменяют значение по ключу, а записывают в конец. Не подскажите как по имени пользователя посылаемые вместе с сообщением
webSocket.send(JSON.stringify({
    'user': user,
    'message': message
}));

мне послать именно ему сообщение отправить на сервер имя пользователя? А может я вообще извращаюсь и есть способ более профессиональный? Спасибо.
Ответить с цитированием