socket.io broadcast的几种用法之初试

论坛 期权论坛 脚本     
已经匿名di用户   2022-7-2 21:58   2239   0

Rooms:

允许相连接的client端组成一个集合,这样可以将时间发送到相链接clients的子集,有一个简单的方法管理。

socket.join('room')

socket.leave("room")

两种方法将时间发送到room中:socket.broadcast.to('room')和io.sockets.in('room')

socket.broadcast.to('room').emit('event_name',data)//emit to 'room' except this socket/*发送消息给room所有的socket client端,除了发送者自己*/


socket.broadcast.emit('event_name',data)//emit to all sockets except this one/*发送信息给所有连接到server的client端*/


io.sockets.in('room').emit('event_name',data)//emit to all clients in a particular room/*发送消息给room所有的socket client端*/


io.sockets.emit('event_name',data) //emit an event to all clients/*发送信息给所有连接到server的client端*/


io.of('namespace').in('room').emit();// emit an event to all clients in a namespace of a particular room





问题:内容广播仅仅在本地机器有效,而局域网其他机器则无效的原因?

client端中:io.connect('http://localhost');

应改为server端的ip地址。


参考:http://stackoverflow.com/questions/6873607/socket-io-rooms-difference-between-broadcast-to-and-sockets-in

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP