0

クライアントが Websocket に接続できるようにする前に、Websocket が実行されているかどうかを検出しようとしています。次のコードを検討してください。

var socket = io.connect('1.1.1.1:1234');
        socket.on('connect',function() {
            console.log('Client has connected to the server');
        });

        socket.on('disconnect',function() {
            console.log("The client has disconnected from the server");
        });

そのIP上のサーバーが実際に実行されている場合にのみこのブロックが呼び出されるようにするにはどうすればよいですか?また、サーバーが稼働していないことを示すメッセージをユーザーに出力するにはどうすればよいですか?

ありがとうございました

4

1 に答える 1

1

サーバーが稼働しているかどうかを検出するには、少なくとも 1 回 io.connect() を起動する必要があります (これを ping と考えてください)。ただし、その後、socket.on('connect_failed', function () { }) イベント ハンドラーを呼び出し、「サーバーがダウンしています」というメッセージをユーザーに表示します。クライアントの公開イベントをご覧
ください

さらに、再接続の試行回数を減らしたい場合は、「再接続」の socket.io 構成設定を false に変更できます。詳細については、Socket.io の構成を
確認してください。

于 2013-05-02T04:42:51.717 に答える