1

我正在使用 nodejs 和 socket.io 在 Windows 8 上开发聊天应用程序...
用户可以随时轻松地连接和断开聊天,但问题是我如何检测到用户通过 ALT+F4 或 Swipe 关闭应用程序或通过任何其他方式,以便我可以在用户关闭应用程序后立即断开用户的连接。

我在stackoverflow的某个地方读过

When an app is closed it is first suspended. Microsoft recommends that you 
treat suspension as though the app will be closed because the OS may decide
to terminate the suspended app with no warning if there is resource contention.

所以我通过 app.oncheckpoint 上的 console.log() 检查了场景。当用户关闭或暂停应用程序时它不会执行,但当用户恢复应用程序时会调用它。

建议我在哪里放置用户断开功能。

4

1 回答 1

0

当用户断开连接时,你想做什么样的事情?如果涉及到向服务器发送命令,那么这个逻辑属于服务器端。例如,当互联网连接失败时你会怎么做?除非它在服务器上,否则任何断开连接逻辑都不会被触发。

所以,我的回答是:把逻辑放在服务器上。在 node.js 中创建一个回调来检测断开连接,或者有一个心跳类型的事件来检查用户是否仍然连接(简单的 ping 发送/响应到/从客户端)

于 2013-04-29T15:39:42.720 回答