ничего не происходит, когда я посылаю какое-то значение серверу сокетов - PullRequest
0 голосов
/ 13 апреля 2019

У меня есть код сервера expressjs, который слушает порт сокета, как показано ниже.

websocket.on('connection', (socket) => {
  console.log('A client just joined on', socket.id);
  websocket.on('messageIM', (message) => {
     console.log('msg:'+message)

});
});

мое приложение на стороне клиента является мобильным проектом собственного реагирования, который содержит код, подобный следующему:

  constructor(props) {
super(props); 
this.socket = SocketIOClient('http://192.168.140.51:3000/');

  }

, и я получаю клиентское соединение 'Клиент только что присоединился к ***'войти в консоль сервера, означает, что соединение с сервером установлено успешно.но когда я запускаю какую-то переменную .... на стороне сервера ничего не происходит! ...

call()=>{
 this.socket.emit('messageIM','Hi server')
}

означает, что когда я вызываю функцию выше call(), на сервере ничего не происходит.

thisКоды, которые я написал как на стороне клиента, так и на стороне сервера, пожалуйста, помогите, если у вас есть опыт работы с этим.

1 Ответ

1 голос
/ 13 апреля 2019

Похоже, вы использовали неверную переменную для прослушивания. Событие соединения возвращает сокет, который вы хотите использовать. Переименовать websocket.on('messageIM' в socket.on('messageIM'

websocket.on('connection', socket => {
  console.log('A client just joined on', socket.id);
  socket.on('messageIM', message => {
     console.log(`msg: ${message}`)
  });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...