Socket.io错误发送消息到套接字

有一个代码行:

io.sockets.socket(socketid).emit('counter', { all : data.all, dialog : data.dialog }); 

它给了我例外:

 TypeError: Object #<Namespace> has no method 'socket' 

我的连接事件:

 io.sockets.on('connection', function(socket) {}); 

为什么对象套接字是不是?

完整代码:

 var socketio = require('socket.io'); var server = http.createServer(app).listen(8181, function(){ console.log("Express server listening on port "+ app.get('port') +" in "+ app.get('env') +" mode."); }); var io = socketio.listen(server); io.on('connection', function(socket) {}); 

使用express的套接字服务器创build。 看http://socket.io/docs/获取更多信息和帮助&#x3002;

 var app = require('express').createServer(); var io = require('socket.io')(app); app.listen(8181); io.on('connect', function(socket) { socket.on('example', function(data) { //parse the data, do something, create response data object, etc. }); }); 

并与HTTP + Express

 var app = require('express')(); var server = require('http').Server(app); var io = require('socket.io')(server); server.listen(8181); io.on('connect', function(socket) { socket.on('example', function(data) { //parse the data, do something, create response data object, etc. }); }); 

对于你正在尝试创build的发射(我的下面的例子将通过提供.to(socket.id)广播只有连接的套接字)

 io.to(socket.id).emit('counter', {all : data.all, dialog : data.dialog});