在socket.io 0.6,我有以下示例代碼:Socket.io 0.7不能調用broadcast.send?
var io = require('/usr/lib/node_modules/socket.io');
var server = http.createServer(function(req,res){
var path = url.parse(req.url).pathname;
switch(path){
....
//core codes
socket.broadcast(data);
}
}).listen(8080);
// ... ...
var socket = io.listen(server);
,一切都不錯。
但是現在我已經將socket.io更新爲0.7,並將socket.broadcast更改爲socket.sockets.broadcast.send(data);
有個例外:無法調用'undefined'的發送?
誰能告訴我如何在不聽某個事件的情況下將數據發送給每個人?
也許這裏有一個辦法:
clients = new Array();
socket.on('connection',function(socket){ clients.push(socket);}
// ...
for(s in clients) s.send(data);
// ...
它真的需要做這樣的方式?
謝謝!
只是一個旁註:不要使用(中)遍歷數組,使用(;;)代替。 –
是的,我做到了!但還有什麼想法? – benyu