nodejs websocket

在nodejs server端实现websocket有很多依赖包。ws、websocketserver、express-ws均可以,下面将以websocketserver为例

// Server端实现

var WebSocketServer = require("websocketserver");
// 监听端口9000
server = new WebSocketServer("others", 9000)


var clients = [];
server.on('collection', function (ws) {
    clients.push(ws);
    server.sendMessage("one", "Welcome to the server!", ws);
});
server.on('message', function(data, id) {
  // 广播消息
  var mes = server.unmaskMessage(data);
  // str为收到的消息
  var str = server.convertToString(mes.message);
  server.sendMessage('all', "xixi I'm qihr");
  console.log(str, '===>str')
});
server.on('closedconnection', function(id) {
  console.log("Connection " + id + " has left the server");
});

客户端实现

<html>
<input type="text" id="text">
<input type="button" onclick="sendMessage()" value="online">
<script>
    var ws = new WebSocket("ws://localhost:9000");

    ws.onopen = function (e) {
        console.log('Connection to server opened');
    }
    ws.onmessage = function(event) { 
        console.log('Client received a message', event); 
    }; 
    ws.onclose = function (e) {
        console.log('connection closed.');
    }
    function sendMessage() {
        ws.send(document.getElementById('text').value);
    }
</script>
</html>

posted @ 2018-08-23 11:16  RunningAndRunning  阅读(219)  评论(0编辑  收藏  举报