在下面这个简单的代码我想在nodeJs上获取连接用户之后尝试我可以在从android设备发送pm
之后回复任何消息,在此代码中如何通过套接字为连接的用户发送消息?
var io = require('socket.io');
var server = io.listen(4732);
var android_socket = undefined;
server.sockets.on('connection', function(socket) {
socket.on('user', function(data) {
if (data.type == "client")
//saving socket
android_socket = socket;
}
});
socket.on("pm", function(data) {
/* Reply message to android_socket */
});
});
console.log('server is connected...');
答案 0 :(得分:2)
您可以简单emit
将事件发送到收到pm
事件的同一个套接字:
socket.on("pm", function(data) {
/* send reply event */
socket.emit('foo', {data: 123});
});
该套接字附加到Android客户端。
无需存储任何android_socket
引用。事实上,你的方法(存储单个套接字引用)无论如何都不会正常工作,因为可能会同时打开多个android套接字连接。