2012-09-26 8 views
6

私はLANアプリケーションでSocketIOを使用しています。クライアントページがロードされ、サーバーがダウンしている場合は、socket.io接続を再試行してください。

クライアントが起動してサーバーがオフになっている場合、どのようにして接続を再試行できますか? "http://172.20.2.10:8080/socket.io/1/?t=1348654723279"

:私はsocket.ioでGETエラーを取得するため

"CONNECT_FAILED" イベントは発生しません。

だから私は試してみました:

var socket = io.connect('172.20.2.10',{port:8080});  
var connected = false; 

    socket.on('connect',function(){         
        connected = true; 
       }); 
    socket.on('error', function (err) { 
        reconnect(); 
       }); 

    function reconnect(){ 
        if (!connected){ 
         var t = setTimeout(function() { 
          socket = io.connect('172.20.2.10',{port:8080}); 
          reconnect(); 
          console.log("Socket REC"); 
         },1000); 

        } 
       } 

をしかし、それは再接続しない、私はそれは私が可能な場合はページの更新を避けるためにしようとしている...ので、JSエラーの

だと思います。

+0

「autoConnect」設定を試してみませんか? – youken

答えて

18

私たちは手動でソケットインスタンスの再接続メソッドを使用できます。

socket.on('error', function (err) { 
socket.socket.reconnect(); 
}); 
関連する問題