madmaker
@madmaker
Full stack программист

Socket.io node js — как с сервера отправить сообщение клиенту и получить на него ответ?

Отправляю с node сервера клиенту на electronjs сообщения через socket.io.

io.sockets.to(socket_id).json.send({
"msg":"msg"
});


С клиента тоже без проблем отправляю сообщения на сервер.

socket.send({
"msg":msg
});


А как отправить сообщение с сервера клиенту и сразу получить ответ?
По сути как curl, post-запрос.
  • Вопрос задан
  • 815 просмотров
Решения вопроса 1
madmaker
@madmaker Автор вопроса
Full stack программист
Сам разобрался.

Server:
socket.emit("eventName", "argString", function(data) {
   console.log("data");//Вернет test
});


Client:

socket.on('eventName', (argString, fn) => {
   fn('test');
});


Получается, что с сервера в emit просто отправляем имя функции callback, а клиент уже выполнит эту функцию и передаст в нее аргументы нужные
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы