【websocket】

WebSocket心跳检测的目的是确保客户端和服务端的连接状态。当网络不稳定或后端异常时,可能无法察觉到连接断开。本文介绍了心跳检测的必要性,以及在WebSocket中如何实现心跳检测和断开重连的操作,确保在连接异常时能及时恢复通信。
摘要由CSDN通过智能技术生成

  var ws;//websocket实例
  var lockReconnect = false;//避免重复连接
  let wsUrl = 'ws://' + window.location.host + '/Socket';
  let ping = 1001
  let pong = 1002
  var newsList = [];//存放订单
  //调用websocket
  //创建WebSocket连接
  const createWebSocket = (wsUrl) =>{
   
      try {
   
          if ("WebSocket" in window) {
   
              console.log("您的浏览器支持 WebSocket!");
              ws = new WebSocket(wsUrl);
              initEventHandle();
          } else {
   
              // 浏览器不支持 WebSocket
              alert("您的浏览器不支持 WebSocket!");
          }
      }catch (e){
   
          console.log("异常信息: " + e)
          reconnect(wsUrl);
      }
  }

  //初始化
  const  initEventHandle = () =>{
   
      ws.onopen = function (event){
   
          var sendData = {
    "code": ping};
          ws.send(JSON.stringify(sendData));
          //可以看到 "连接正在打开"并没有被打印,说明open对应的就是OPEN状态;
          if (ws.readyState == WebSocket.CONNECTING) {
   
              console.log('连接正在打开');
          }
          if (ws.readyState == WebSocket.OPEN) {
   
              console.log('连接已打开');
          }
          // sendMsg();
          console.log('已经建立连接');
          auditMsgCount();
          //心跳检测重置
          heartCheck.reset
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值