基本上,如果我说使用websockets的聊天应用程序,我希望能够向服务器发送一条消息,说我正在断开连接。我已经尝试绑定到onbeforeunload,但这似乎只能显示一条消息。
这有更好的策略吗?如果没有,似乎我必须从服务器端执行某种ping /超时策略。
感谢。
答案 0 :(得分:0)
WebSockets是在TCP之上实现的,而在TCP世界中,不同的连接丢失 - 是预期的情况。
在网络安全方面 - 您的服务器端不应该依赖客户的“善意”,并且应该始终是独立的,并且期望任何和更多的断开连接方案。
考虑到这一点,您必须预期意外断开连接(GPRS / EDGE / 3G / 4G连接不良或桥接/接地,wifi丢弃,以太网拔出,ISP问题,服务器网络问题等等)。实际上,没有“再见”的丢弃连接是最常见的断开连接,因此必须实现服务器端逻辑,并考虑到这一点。