45 lines
906 B
JavaScript
45 lines
906 B
JavaScript
var WS = {
|
|
init : function(){
|
|
var me = this;
|
|
|
|
if(me._pingTimer){
|
|
clearTimeout(me._pingTimer);
|
|
}
|
|
me._pingTimer = setInterval(function(){
|
|
me.ping();
|
|
},30000);
|
|
|
|
this.ws = new WebSocket("ws://"+ HOST +":3000/");
|
|
this.ws.onopen = function(){
|
|
//Web Socket 已连接上,使用 send() 方法发送数据
|
|
me.ping();
|
|
};
|
|
this.ws.onmessage = function (evt){
|
|
var received_msg = evt.data;
|
|
if(received_msg.indexOf('EVENT') != -1){
|
|
console.log("数据已接收...",received_msg);
|
|
emitEventByJSON( JSON.parse(received_msg),false);
|
|
}
|
|
|
|
};
|
|
this.ws.onclose = function(){
|
|
// 关闭 websocket
|
|
setTimeout(function(){
|
|
me.init();
|
|
},5000);
|
|
};
|
|
},
|
|
ping : function(){
|
|
this.ws && this.ws.send('ping');
|
|
},
|
|
sendToOther : function(jsonString){
|
|
try{
|
|
this.ws && this.ws.send('sendOther@_@'+ jsonString);
|
|
}catch(e){}
|
|
}
|
|
}
|
|
|
|
$(function(){
|
|
WS.init();
|
|
})
|