使用socket io将消息发送到所有浏览器

我搞砸了socket.io和node.js,并想知道如何完成以下操作:我有一个简单的窗体,将文本string发送到服务器,然后服务器将其发回,并将其附加到div 。 我想要做的是对所有浏览器中的所有用户进行div更新,目前它只更新发送消息的那个。

来自app.js(node.js服务器)的代码:

io.sockets.on('connection', function(socket) { socket.on('send_message', function(data) { data.message = data.message + ' yo<br/>'; socket.emit('get_message',data); }); }); 

客户端代码:

  <script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script> <script src="/socket.io/socket.io.js"></script> <script> $(document).ready(function() { var socket = io.connect('http://localhost:3000'); $('#sender').live('click',function() { var user_message = $('#message_box').val() socket.emit('send_message',{message: user_message}); }); socket.on('get_message', function(data) { $('#data').append(data.message); }); }); </script> 

和html:

 <div id='data'></div> <input type='text' id='message_box' placeholder='send message'> <button id='sender'>Send Message</button> 

我应该怎么做才能将消息发送到多个浏览器?

更改

 socket.emit('get_message',data); 

 socket.broadcast.emit('get_message',data); 

将其广播到所有连接的用户,除了要在其上调用广播的套接字之外。

如果你也想包括那个sockets,你可以做

 io.sockets.emit('get_message', data);