websocket 接口测试 使用js编写 简陋版

<!DOCTYPE html> 
<html> 
<head> 
    <meta  charset= "UTF-8"  /> 
    <title>websocket测试工具</title> 
    <style>
        canvas {
            border: 1px solid black;
        }
    </style>
</head> 
    <body> 
        <script type="text/javascript"> 
            var socket; 
            var messageNum=0;
            var url;
            var jsonStr;
            
            if (window.WebSocket) { 
                function openws(url){                
                    this.socket = new WebSocket(url); 
                    
                    
                    
                    this.socket.onmessage = function(event) { 
                        messageNum = messageNum + 1;
                        var ta = document.getElementById('responseText'); 
                        var kk = "----------------------------------------------------------------------";
                        ta.value= ta.value  + event.data + messageNum + "\n" + kk + "\n";
                        
                        ta.scrollTop = ta.scrollHeight;
                        
                        jsonStr = event.data;
                        jsonStr = JSON.parse(jsonStr);
                        //console.log(jsonStr)
                        if(jsonStr.data.sortid == "draw"){
                            xx = jsonStr.data.content.xx.split(",");
                            yy = jsonStr.data.content.yy.split(",");
                            
                            window.draw(xx, yy);
                            /*for(i = 0; i < xx.length; i++){
                                x = xx[i];
                                
                                y = yy[i];
                            }*/
                            //console.log(jsonStr.data.content.xx.split(",")[0]);
                            //console.log(jsonStr.data.content.yy.split(",")[0])
                        }
                        if (jsonStr.data.sortid == "insert_page"){
                            console.log(jsonStr.data.content.src);
                            document.getElementById("c1").style.backgroundImage = "url" + "(" + jsonStr.data.content.src + ")" ;
                            //document.getElementById("img1").src = jsonStr.data.content.src;
                        }
                        
                        
                        
                        
                    }
                    
                    this.socket.onopen = function(event) { 
                        var ta = document.getElementById('responseText'); 
                        
                        ta.value = "连接开启!"; 
                    }
                    
                    this.socket.onclose = function(event) { 
                        var ta = document.getElementById('responseText'); 
                        ta.value = "连接关闭"; 
                    }
                }
                
                            
            } else { 
                alert("您的浏览器不支持 WebSocket!"); 
            } 
      
            function send(message) { 
                if (!window.WebSocket) { 
                    return; 
                } 
                
                
                if (socket.readyState == WebSocket.OPEN) { 
                    socket.send(message); 
                } else { 
                    alert("连接没有开启"); 
                } 
            }
            
            function opensocket(){
                url = document.getElementById("i1").value
                if (url == ""){
                    alert("请重新输入连接")
                } else{
                    window.openws(url)
                }
            }
            
            function closeWebsocket(){
                socket.close();
            }
            function sendMessage(){
                if (socket == null){
                    alert("websocket没有连接")
                } else {
                    var message = document.getElementById("ms").value;
                    socket.send(message);
                }
            
            }
            function draw(x, y){
                ele = document.getElementById("c1");
                ctx = ele.getContext("2d");
                ctx.lineWidth = 3;
                ctx.beginPath();
                ctx.moveTo(x[0]*0.4, y[0]*0.4);
                for(i = 1; i < x.length; i ++){
                    ctx.lineTo(x[i]*0.4, y[i]*0.4);
                
                }
                ctx.stroke();
            
            }
             
        </script>
        
        
        
        <div style = "margin-top : 10px;">
        
        <input id = "i1" style = "width:500px" value = "ws://172.31.17.48:9090?topic=2c9f49a06936fb10016947e2775900b9
&userName=霸波奔&userId=1010000001000163460&userRole=0&deviceId=45"/>
            <div  style = "margin:20px;">
            <button style = "margin-left: 100px;" onclick = "opensocket()">连接</button>
            <button style = "margin-left: 100px;" οnclick="closeWebsocket()">断开连接</button>
            </div>
        </div>
        
        <h3 >websocket连接工具</h3> 
        <textarea id="responseText" style="width: 500px; height: 300px;resize:none" placeholder="显示消息"></textarea> <br />    
        <div>
            <textarea  id = "ms" style="width: 500px; height: 200px; resize:vertical;" ></textarea> <br />
            <input  type = "button" value = "发送" onclick = "sendMessage()" style = "width:500px; margin:0px" />
        </div>    
        
        
         
        <canvas width = "760" height = "480" id = "c1"></canvas>
        
        
    </body>
<html>

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值