与nodejs创build聊天ws(einaros)

昨天我开始使用这个模块。 我正在尝试与websockets进行一些聊天。

我有这个问题,我不知道如何将消息发送到服务器,然后显示给所有用户。 在服务器端我有这样的代码:

var ipaddress = 'localhost'; var port = 8080; var WebSocketServer = require('ws').Server , ws = new WebSocketServer({host:ipaddress, port:port}); ws.on('connection', function(ws) { console.log('New connection'); ws.on('message', function(message) { ws.send(message); }); }); console.log('Listening to ' + ipaddress + ':' + port + ' ...'); 

而在客户端这个其他的代码:

 jQuery(document).ready(function($) { var content = $('#screen'); var message = $('input[type="text"]').val(); var ws = new WebSocket('ws://localhost:8080'); ws.onopen = function() { console.log('Connected'); }; $('input[type="button"]').click(function() { ws.send(message); }); ws.onmessage = function(msg) { console.log('Received message from server: ' + msg.data); addMessage(msg.data); } function addMessage(message) { content.prepend('<p><span>' + message + '</span></p>'); } }); 

这里解释:

 var WebSocketServer = require('ws').Server , wss = new WebSocketServer({host:ipaddress, port:port}); wss.broadcast = function(data) { for (var i in this.clients) this.clients[i].send(data); }; // use like this: wss.on('connection', function(ws) { ws.on('message', function(message) { wss.broadcast(message); }); }); 
 var WebSocketServer = require('ws').Server var webserver = new WebSocketServer({ port:3000 }); webserver.on("message",function(message) { webserver.clients.forEach(function(client) { client.send(message); }); }):