【发布时间】:2013-07-04 17:43:22
【问题描述】:
我一直在用 node 和 Socket.io 开发一个在线游戏(基本上所有游戏的状态都在 Socket.io 中),但有一件事一直困扰着我。现在,用户必须关闭页面才能断开与服务器的连接。显然这需要更加优雅,我需要一个适当的“注销”按钮。
但是对于我的一生,我无法弄清楚如何制作一个。我在谷歌上搜索了答案,我已经梳理过了。我深入研究了 Socket.io 中的 Socket 对象,并尝试了这 3 种听起来相关的方法来翻转 Socket 对象上的某些东西以断开该用户的连接:
socket.disconnected = true;
//and
socket.manager.connected[socket.id] = false;
//and
socket.manager.open[socket.id] = false;
但这些都不能改变用户仍处于连接状态的事实。这是怎么做到的?
【问题讨论】:
-
尝试 socket.disconnect();
-
就是这样 :) 谢谢!