• 实现 WebSocket 断开自动重连的 JavaScript 库


    ReconnectingWebSocket 是一个小型的 JavaScript 库,封装了 WebSocket API 提供了在连接断开时自动重连的机制。

    只需要简单的将:

    ws = new WebSocket('ws://....');

    替换成:

    ws = new ReconnectingWebSocket('ws://....');

    //间隔发送心跳包数据给服务器,服务器在一定时间内发回心跳包响应,对比超时限定,如果超过设定的超时时间,则认为当前与服务器的websocket连接已经断开,关闭当前web socket连接,善后处理,例如重新连接,或者弹出提示……
    function keepalive(ws) {
        var time = new Date();
        if (last_health != -1 && (time.getTime() - last_health > health_timeout)) {
            //连接断开,可设置重连或者关闭连接
            $("#keeplive_box").html("服务器没有响应.").css({
                "color" : "red"
            });
            //ws.close();
        } else {
            $("#keeplive_box").html("连接正常").css({
                "color" : "green"
            });
            if (ws.bufferedAmount == 0) {
                ws.send('~H#C~');
            }
        }
    }
    
    var ws = new WebSocket(to_url);
    ws.onopen = function () {
        $("#statustxt").html("connected.");
        $("#send_btn").attr("disabled", false);
        heartbeat_timer = setInterval(function () {
                keepalive(ws)
            }, 3000);
    }
    高否?富否?帅否? 否? 滚去学习!
  • 相关阅读:
    【Java基础】for循环
    【java基础】for循环一些小例子
    ELK日志搜索引擎
    Spring boot 环境搭建
    【java基础】三元运算符&语句结构
    【接口自动化】正则表达式
    mysql 数据库表的基本操作
    centos下安装jenkins
    问题 H: 例题5-8 Fibonacci数列
    数字特征值
  • 原文地址:https://www.cnblogs.com/baixc/p/4816783.html
Copyright © 2020-2023  润新知