[英]“Emit” and “On” socket IO, Node.js
我刚刚开始尝试node.js,很可能是我弄错了,所以请多多包涵:)
据我了解,emit函数会发送一个自定义事件,然后拾取事件,然后执行某些操作。
这是我正在学习的书中的一些代码。
socket.on('rooms', function(rooms) {
console.log("room received");
$('#room-list').empty();
for(var room in rooms) {
room = room.substring(1, room.length);
if (room != '') {
$('#room-list').append(divEscapedContentElement(room));
}
}
$('#room-list div').click(function() {
chatApp.processCommand('/join ' + $(this).text());
$('#send-message').focus();
});
});
setInterval(function() {
socket.emit('rooms');
console.log("room emitted");
}, 1000);
它每秒记录一次控制台中的“房间发射”,但不是记录“房间已接收”
这表明它应该发出房间事件,并且on函数应该将其拾取。 但是由于某种原因,事实并非如此。
我做错什么了吗???
socket.emit()
将信息从服务器发送到客户端。
socket.on()
接收从客户端发送到服务器的信息。
除非服务器作为客户端连接到自身,否则您无法从服务器向服务器发出消息。
希望这会有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.