socket.io(node.js)で任意のタイミングで接続,切断,再接続したい場合。
2014年5月16日
ぐぐった感じ、ほとんどがjs読み込んだ途端に接続して、もし切断したら再接続みたいなのが多い。
(というか、ふつうに使う分にはそれでいいんですが・・)
任意のタイミングで接続、切断をしたかったので下記のような感じで接続してみた。
// 空のsocketを用意 var socket = { on: function(){} }; // 接続 var connect = function() { if ( !socket.connected ) { // 接続 socket = io.connect('http://example.com:3000'); } else { // 再接続 socket.connect(); } socket.on('msg',function(mes){ // msg受信時の処理... }); } // 切断 var disconnect = function(){ socket.disconnect(); }
connect()を呼んだら接続、disconnect()を読んだら切断。