Java jetty 9、websocket和关闭服务器端的websocket连接
我有一个使用基于jetty 8的websocket服务器的应用程序。一切都很正常,当用户刷新页面、关闭页面或移动到另一个页面时,连接关闭,并且在服务器端触发onClose事件 我刚搬到jetty 9,在firefox中,一切都是一样的(刷新时连接关闭),但在chrome或opera上没有。我甚至关闭了浏览器,onClose事件没有被触发 我知道jetty 9只支持最新的websockets协议版本,我想知道,例如,当用户刷新页面时,浏览器是否正在向服务器发送一些消息,以及如何在jetty上处理这个问题,或者我必须使用javascript来处理这个问题,如本例所示:使用Java jetty 9、websocket和关闭服务器端的websocket连接,java,websocket,jetty,embedded-jetty,Java,Websocket,Jetty,Embedded Jetty,我有一个使用基于jetty 8的websocket服务器的应用程序。一切都很正常,当用户刷新页面、关闭页面或移动到另一个页面时,连接关闭,并且在服务器端触发onClose事件 我刚搬到jetty 9,在firefox中,一切都是一样的(刷新时连接关闭),但在chrome或opera上没有。我甚至关闭了浏览器,onClose事件没有被触发 我知道jetty 9只支持最新的websockets协议版本,我想知道,例如,当用户刷新页面时,浏览器是否正在向服务器发送一些消息,以及如何在jetty上处理这
window.onbeforeunload
如果我能处理服务器端的所有工作,我会优先考虑。谢谢
更新
如果我使用ws.close()关闭与客户端的连接,一切都会很好。Jetty 9.0.0中存在一些关闭和断开连接检测错误
- -未检测到会话的断开连接
- -WebSocketCloseTest错误失败
这两个版本都是最近修复并交付的,请尝试一下该版本。很有趣。您在服务器上收到“错误”事件了吗?在过去的24小时内,有一个错误记录在案@zhong.j.yu no.未触发任何错误。