Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Непонятная беда с socket.io (https://javascript.ru/forum/node-js-io-js/75274-neponyatnaya-beda-s-socket-io.html)

Signal 18.09.2018 15:18

Непонятная беда с socket.io
 
Версия node v8.3.0
га ubunte 14 версии все норм на локальной машине из под вирты на vm ware, на сервере 16 версия и вот такая лажа, постоянно выполняется код помеченный ниже в скобках
var g_ServerPort = 19500;
var io = require('socket.io').listen(g_ServerPort);

var onlineplayers=0;


io.sockets.on('connection', function (socket) {
   //{
   //======Постоянно выполняется вот тут
    onlineplayers++;
    
    console.log('onlineplayers='+onlineplayers);

     io.to(socket.id).emit('ok_connected', { id : socket.id });
   //}
socket.on('security', function(data){


});

});

SuperZen 18.09.2018 17:00

io.sockets.on('connection', function (socket) {...

а не так должно быть?
io.on('connection', function (socket) {...

Signal 18.09.2018 21:22

io.on('connection'

работает только для 1 соединения

SuperZen 18.09.2018 23:06

https://socket.io/docs/emit-cheatsheet/

// sending to all clients except sender
socket.broadcast.emit('broadcast', 'hello friends!');
...
// sending to all connected clients
io.emit('an event sent to all connected clients');

Signal 20.09.2018 16:38

Цитата:

Сообщение от SuperZen (Сообщение 494971)
io.sockets.on('connection', function (socket) {...

а не так должно быть?
io.on('connection', function (socket) {...

разницы нет, ошибка такая же

Audaxviator 20.09.2018 16:49

Пишем на сервере примерно такой код
io.on('connect', function(socket){
  console.log('connected', socket.id);

  console.log(Object.keys(io.sockets.sockets));

  socket.on('disconnect', function(){
    console.log('disconnected', socket.id);
  });
});

и убеждаемся, что никакой ошибки нет.

Signal 20.09.2018 16:52

Цитата:

Сообщение от SuperZen (Сообщение 494971)
io.sockets.on('connection', function (socket) {...

а не так должно быть?
io.on('connection', function (socket) {...

Цитата:

Сообщение от Audaxviator (Сообщение 495249)
Пишем на сервере примерно такой код
io.on('connect', function(socket){
  console.log('connected', socket.id);

  console.log(Object.keys(io.sockets.sockets));

  socket.on('disconnect', function(){
    console.log('disconnected', socket.id);
  });
});

и убеждаемся, что никакой ошибки нет.

и вуаля
посстоянный цикл и хоть тресни
>node proba.js
connected F3l-kppJVpyYHfhvAAAA
[ 'F3l-kppJVpyYHfhvAAAA' ]
connected gXQOAQxi945mP162AAAB
[ 'F3l-kppJVpyYHfhvAAAA', 'gXQOAQxi945mP162AAAB' ]
connected wTv5xBOrTOiTIS6vAAAC
[ 'F3l-kppJVpyYHfhvAAAA',
'gXQOAQxi945mP162AAAB',
'wTv5xBOrTOiTIS6vAAAC' ]
connected _fz9J7Q6Lu93cEi4AAAD
[ 'F3l-kppJVpyYHfhvAAAA',
'gXQOAQxi945mP162AAAB',
'wTv5xBOrTOiTIS6vAAAC',

при подключении клиента, идет посстоянный цикл, типа рекконекта

причем, тотже код на локальном сервере пашет норм, на удаленном VPS поставил уже ubuntu 14.04 все равно не пашет, на локальном и на ubuntu 14 и на 16 версии и на debian пашет все норм

Audaxviator 20.09.2018 16:59

Круто.

Signal 20.09.2018 17:18

вот и я не въеду надо тада менять VPS, то что и они не вкурсе


Часовой пояс GMT +3, время: 08:42.