mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-06-11 14:17:24 +08:00
优化代码
This commit is contained in:
parent
f42a146acd
commit
874c631229
@ -213,17 +213,24 @@
|
||||
let heartCheck = {
|
||||
timeout: 30000, // 9分钟发一次心跳,比server端设置的连接时间稍微小一点,在接近断开的情况下以通信的方式去重置连接时间。
|
||||
serverTimeoutObj: null,
|
||||
pingTime: new Date().getTime(),
|
||||
reset: function () {
|
||||
clearTimeout(this.timeoutObj);
|
||||
clearTimeout(this.serverTimeoutObj);
|
||||
return this;
|
||||
},
|
||||
start: function () {
|
||||
var self = this;
|
||||
let self = this;
|
||||
this.serverTimeoutObj = setInterval(function () {
|
||||
if (websocket.readyState == 1) {
|
||||
console.log("连接状态,发送消息保持连接");
|
||||
websocket.send("{'cmd':'ping','clientId':'"+clientId+"'}");
|
||||
let _pingTime = new Date().getTime();
|
||||
//保护,以防 异常
|
||||
if (_pingTime - self.pingTime < 15 * 1000) {
|
||||
return;
|
||||
}
|
||||
websocket.send("{'cmd':'ping','clientId':'" + clientId + "'}");
|
||||
self.pingTime = _pingTime;
|
||||
|
||||
heartCheck.reset().start(); // 如果获取到消息,说明连接是正常的,重置心跳检测
|
||||
} else {
|
||||
console.log("断开状态,尝试重连");
|
||||
@ -277,7 +284,7 @@
|
||||
|
||||
//接收到消息的回调方法
|
||||
websocket.onmessage = function (event) {
|
||||
heartCheck.reset().start();
|
||||
heartCheck.reset().start();
|
||||
console.log("event", event);
|
||||
let _data = event.data;
|
||||
try {
|
||||
@ -285,7 +292,7 @@
|
||||
} catch (err) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (_data.code == 200) {
|
||||
toastr.info(_data.msg);
|
||||
} else {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user