这个确切的代码不起作用,但是,我希望它是这样的:
io.sockets.on('connection', function(socket) {
socket.on('heartbeat', function() {
// Do something here...
});
});
这样的事情可能发生吗?我的意思是,我知道我可以用setInterval做一个不同的函数,每隔15秒触发一次:
io.sockets.on('connection', function(socket) {
setInterval(function() {
// Do something
},15000);
});
但是,既然心跳已经在这个时间间隔内运行,为什么不利用它呢?
无论如何,任何见解都将不胜感激。
我想我明白你想做什么了。你可以在这里查看一些暴露的事件-Socket.io事件列表-但没有可以在设定的时间间隔触发的"心跳"事件。
你的第二段代码走在了正确的轨道上
setInterval(function() {
socket.emit('heartbeat', someData);
}, 5000);
在客户端-
socket.on('heartbeat', function(data) {
console.log(data);
})