server.js
var ws = require('nodejs-websocket');
var count = 1;
var server = ws.createServer(function(socket) {
socket.on('text', function(str) {
var data = JSON.parse(str);
if (data) {
server.connections.forEach(function(item) {
var info = JSON.parse(item.frameBuffer);
if (info) {
console.log("groupId-----", item["groupId"])
if ((info.group == data.group)) {
item["groupId"] = data.group
item.sendText(data.message);
}
} else {
// console.log(item)
}
})
}
});
}).listen(3000);
html
<script>
// 打开一个 web socket 这里端口号和上面监听的需一致
var ws = new WebSocket('ws://localhost:3000/');
var i = 0
// Web Socket 已连接上,使用 send() 方法发送数据
ws.onopen = function() {
ws.send(JSON.stringify({
message: "是你小子" + i,
userId: "2",
group: "2"
}));
// 这里用一个延时器模拟事件
setInterval(function() {
i++;
ws.send(JSON.stringify({
message: "是你小子" + i,
userId: "2",
group: "1"
}));
}, 5000);
}
// 这里接受服务器端发过来的消息
ws.onmessage = function(e) {
console.log(e.data)
}
</script>
|