Browse Source

feat: 优化ws无限重连,增加重连上限,重连达到上限后不再重连

cuiyalong 1 năm trước cách đây
mục cha
commit
15712854c6
1 tập tin đã thay đổi với 11 bổ sung0 xóa
  1. 11 0
      src/web/staticres/js/login.js

+ 11 - 0
src/web/staticres/js/login.js

@@ -29,6 +29,10 @@ var unseatzbqyflag = false;//未登录情况下,用户点击中标企业等开
 var sendMsgInterval = null;
 var entjumpflag = false;
 var isBindPage = false; // 是否是绑定手机号页面功能
+var _reconnectedConf = {
+  count: 0, // ws重连了几次
+  max: 10, // ws最大重连次数,重连max次后不再重连
+}
 //轮询查询
 var LoginPolling = {
 	isPostLoginPolling: true,//是否发起轮询请求
@@ -184,11 +188,18 @@ function reconnect() {
 	if(webSocketHeartCheck.lockReconnect || loginflag){
 		return;
 	}
+  // 达到最大重连次数后,不再重连
+  if (_reconnectedConf.count >= _reconnectedConf.max) {
+    console.log('ws重连达到最大次数,不再重连')
+    return
+  }
 	LoginPolling.isPostLoginPolling = true;
     webSocketHeartCheck.lockReconnect = true;
 	LoginPolling.init();
     //没连接上会一直重连,设置延迟避免请求过多
     setTimeout(function () {
+        _reconnectedConf.count++;
+        console.log('ws第' + _reconnectedConf.count + '次重连')
         createWebSocket();
 		webSocketHeartCheck.lockReconnect = false;
     }, 2000);