JavaScript实现在线websocket WSS测试工具 -toolfk程序员工具网

1,409 阅读2分钟

      本文要推荐的[ToolFk]是一款程序员经常使用的线上免费测试工具箱,ToolFk 特色是专注于程序员日常的开发工具,不用安装任何软件,只要把内容贴上按一个执行按钮,就能获取到想要的内容结果。ToolFk还支持 BarCode条形码在线生成QueryList采集器PHP代码在线运行PHP混淆、加密、解密Python代码在线运行JavaScript在线运行YAML格式化工具HTTP模拟查询工具HTML在线工具箱JavaScript在线工具箱CSS在线工具箱JSON在线工具箱Unixtime时间戳转换Base64/URL/Native2Ascii转换CSV转换工具箱XML在线工具箱WebSocket在线工具Markdown 在线工具箱Htaccess2nginx 转换进制在线转换在线加密工具箱在线伪原创工具在线APK反编译在线网页截图工具在线随机密码生成在线生成二维码Qrcode在线Crontab表达式生成在线短网址生成在线计算器工具。等20多个日常程序员开发工具,算是一个非常全面的程序员工具箱网站。


網站名稱:ToolFk
網站鏈結:www.toolfk.com/
工具链接:www.toolfk.com/tool-online…

代码教學

本工具[在线WebScoket测试工具]使用JavaScript代码实现。网站页面如下

STEP 1

websocket.png

STEP 2

核心代码如下

function StartWebSocket(wsUri) {
    websocket = new WebSocket(wsUri);
    websocket.onopen = function(evt) { onOpen(evt) };
    websocket.onclose = function(evt) { onClose(evt) };
    websocket.onmessage = function(evt) { onMessage(evt) };
    websocket.onerror = function(evt) { onError(evt) }; }

function onOpen(evt) {
    writeToScreen("<span style='color:red'>@lang('toolfk.lang_text_connect_suc')</span>");
}
function onClose(evt) {
    writeToScreen("<span style='color:red'>@lang('toolfk.lang_text_connect_close')</span>");
    websocket.close();
}
function onMessage(evt) {
    writeToScreen('<span style="color:blue">@lang('toolfk.lang_text_server_rep')&nbsp;'+formatDate(new Date())+'</span><br/><span class="bubble">'+ evt.data+'</span>');
}
function onError(evt) {
    writeToScreen('<span style="color: red;">@lang('toolfk.lang_text_send_error'):</span> '+ evt.data);
}
function   formatDate(now)   {
    var   year=now.getFullYear();
    var   month=now.getMonth()+1;
    var   date=now.getDate();
    var   hour=now.getHours();
    var   minute=now.getMinutes();
    var   second=now.getSeconds();
    return   year+"-"+(month=month<10?("0"+month):month)+"-"+(date=date<10?("0"+date):date)+" "+(hour=hour<10?("0"+hour):hour)+":"+(minute=minute<10?("0"+minute):minute)+":"+(second=second<10?("0"+second):second);
}
function writeToScreen(message) {
    var div = "<div class='newmessage'>"+message+"</div>";
    var d = $("#output");
    var d=d[0];
    var doScroll = d.scrollTop == d.scrollHeight - d.clientHeight;
    $("#output").append(div);
    if (doScroll) {
        d.scrollTop = d.scrollHeight - d.clientHeight;
    }
}

$(function(){
    $(".btn-open").click(function(){
        var wsaddr = $("#wsaddr").val();
        if (wsaddr=='') {
            layer.msg("@lang('toolfk.lang_text_websocket_empty')");
            return false;
        }
        StartWebSocket(wsaddr);
    });

    $(".btn-close").click(function(){
        websocket.close();
    });

    $(".btn-clear").click(function(){
        $("#wsaddr").val("");
        $("#output").empty();
    });
    $(".btn-demo").click(function(){
        $("#wsaddr").val($(this).data("url"));
    });

    $(".btn-send").click(function(){
        var message=$("#message").val();
        if (message=='') {
            layer.msg("@lang('toolfk.lang_text_send_address')");
            $("#message").focus();
            return false;
        }
        if (typeof websocket==="undefined"){
            layer.msg("@lang('toolfk.lang_text_send_fail')");
            return false;
        }
        if (websocket.readyState==3) {
            layer.msg("@lang('toolfk.lang_text_close_suc')");
            return false;
        }
        $("#message").val('');
        writeToScreen('<span style="color:green">@lang('toolfk.lang_text_send_info_ok')&nbsp;'+formatDate(new Date())+'</span><br/>'+ message);
        websocket.send(message);
    })
});


值得一試的三個理由:

  1. 整合各種程序员开发中经常使用的开发测试工具。

  2. 简洁美观大气的网站页面

  3. 支持 在线格式化执行代码、APK在线反编译、在线高强度密码生成、在线网页截图 等二十多種工具服务

  4. 同时还推荐一下它的姐妹网 www.videofk.com 视频下载工具箱


本文链接:www.hihubs.com/article/373