我一直在使用几个应用程序,包括StackExchange Chat(https://chat.stackoverflow.com/)。
假设我打开https://chat.stackoverflow.com/并开始聊天,在几条消息之后,我改变了我的计算机的IP,但在那之后,我仍然能够接收消息。
服务器如何知道特定客户端已连接到它并发送消息?
我的猜测是客户端检测到websocket已经死亡,并重新创建它。这会再次经历整个创建过程,因此无论是因为IP发生了变化还是其他事情发生而死都无关紧要,比如暂时失去连接
当服务器检测到websocket已经死亡时,它就会丢弃它。客户完成所有工作
服务器只知道它有许多属于特定用户的websockets,并将发送所有这些