2013-04-26 106 views
4

我有一個應用程序使用基於碼頭8的websocket服務器。一切都很好,當用戶刷新頁面,關閉頁面或移動到另一個頁面連接關閉,並在服務器端觸發onClose事件。碼頭9,websockets和服務器端關閉websocket連接

我剛搬到碼頭9,並在Firefox中的一切工作相同(刷新連接關閉),但沒有在鉻或歌劇。我甚至關閉了瀏覽器,onClose事件沒有被觸發。

我知道jetty 9只支持最新的websockets協議版本,我想知道當用戶刷新頁面時瀏覽器是否向服務器發送了一些消息,以及如何在碼頭上處理這個消息,或者我有在這個例子中處理這個javascript:Closing WebSocket correctly (HTML5, Javascript)使用window.onbeforeunload

如果我可以處理服務器端的所有工作,我會優先考慮。由於

UPDATE 如果我使用ws.close關閉來自客戶端的連接()一切都很正常。

+0

有意思。你在服務器上收到「錯誤」事件嗎? – ZhongYu 2013-04-26 02:54:31

+1

在過去的24小時內有這方面的問題。 https://bugs.eclipse.org/406449 – 2013-04-26 03:11:40

+0

@ zhong.j.yu no。沒有錯誤被觸發。 – 2013-04-26 09:57:20

回答

2

有在碼頭有幾個親密和斷開檢測錯誤9.0.0

  • 406449 - 會話的斷開未檢測
  • 404991 - WebSocketCloseTest失敗虛假

這兩項都是最近固定並在Jetty 9.0.3.v20130506交付請給該版本一試。

+0

謝謝。我已經更新了 – 2013-05-14 00:10:42

相關問題