【发布时间】:2013-04-20 02:39:51
【问题描述】:
我有一个使用基于 jetty 8 的 websocket 服务器的应用程序。一切正常,当用户刷新页面、关闭页面或移动到另一个页面时,连接关闭,并且在服务器端 onClose事件被触发。
我刚搬到 9 号码头,在 Firefox 中一切正常(刷新时连接关闭),但在 chrome 或 opera 上却没有。我什至关闭了浏览器,并没有触发 onClose 事件。
我知道 jetty 9 只支持最新的 websockets 协议版本,我想知道例如当用户刷新页面时浏览器是否正在向服务器发送一些消息,以及如何在 jetty 上处理这个问题或者我必须这样做像在这个例子中一样在javascript中处理这个:Closing WebSocket correctly (HTML5, Javascript) using window.onbeforeunload ?
如果我能处理服务器端的所有工作,我会更喜欢。谢谢
更新 如果我使用 ws.close() 关闭来自客户端的连接,一切都会很好。
【问题讨论】:
-
有趣。您是否在服务器上收到“错误”事件?
-
在过去的 24 小时内已提交了一个错误。 bugs.eclipse.org/406449
-
@zhong.j.yu 没有。没有触发错误。
标签: java websocket jetty embedded-jetty