SocketIO +烧瓶检测断开连接

时间:2020-03-27 03:41:18

标签: python python-3.x sockets flask socket.io

我在这里有一个不同的问题,但意识到它简化了这一点: 您如何检测客户端何时从页面断开(关闭其页面或单击链接)(换句话说,套接字连接关闭)?我想制作一个具有更新用户列表的聊天应用,并且在Python上使用Flask。当用户连接时,浏览器发送一个socket.emit()并传递事件和用户名,以告知服务器新用户的存在,此后服务器将向所有客户端发送socket.emit()消息,以便所有客户端会将这个新用户添加到他们的用户列表中。但是,我希望客户端也将包含其用户名的消息发送到Disconnect上的服务器。我不知道如何正确设置触发器。注意:我只是在页面上使用带有脚本标签的简单html文件,我不确定如何添加JS文件以与页面一起使用,尽管我可以确定是否需要这样做。

1 个答案:

答案 0 :(得分:1)

弄清楚了。 socket.on('disconnect')确实是正确的,但是默认情况下,它每分钟左右仅对每个用户执行一次ping操作,这意味着需要很长时间才能看到该事件。