Клиент Socket.IO не работает должным образом при соединении 3g/4g

Я искал в Интернете проблему, с которой я сталкиваюсь с клиентом socketio в сетях 3G /4G. Кажется, он подключается, но не остается подключенным долго, он остается подключенным в течение примерно 60 секунд, а затем отключается, снова подключаясь, когда инициируются события попытки повторного подключения, но повторяет вышеуказанное поведение.

Кто-нибудь знает, почему это происходит или как это решить?

Заранее спасибо!

Вот пример кода, который я использую для запуска сокета:

var socketOpts = { 
                        reconnect: true,
                        reconnectionDelayMax : 2500,
                        timeout : 10000,
                        transport: ['polling','websocket']
                     };

    socket = io.connect( $scope.socket_addr, socketOpts );

    showMessage( true, "Aguardando conexão com o servidor!", true );

    /* Abaixo estão os eventos que o Socket pode disparar durante o funcionamento do app */

    /* Quando o Socket conectar no servidor */
    socket.on("connect", function() 
    {
        $scope.socket_connected = true;
        /* Agora que o socket já conectou, posso alterar o tempo de ping */
        socket.io.engine.pingInterval = 3000;
        socket.io.engine.pingTimeout = 5000;
        showMessage( false, "", false );
        console.log( "WS conectado" );
    });

0 ответов

Установка этих опций для задержки переподключения сработала:-)

val opts = IO.Options()
opts.reconnection = true
opts.reconnectionDelay = 2000
opts.timeout = 60000
val socket = IO.socket(url, opts)

Или в ионной

socketConf: {
    url: 'http://your.Server.url',
    options: { reconnection: true, reconnectionDelay: 3000, timeout: 60000 }
  }
Другие вопросы по тегам