0

ユーザーがページを更新したり、別の場所に移動したりすると、HTML5 Web ソケットの動作が異常になります。ページのリロード中、Firefox と Chrome の両方で、Web サーバーとブラウザー間のソケット接続が開いたままのように見え、ページがブラウザーでリロードされると閉じられます。これは、ソケットが reload でブラウザによって閉じられるため、ブラウザとサーバー間の接続を確立するために 1 回おきにしか機能しないことを意味します。Firefox からの Firebug コンソールのエラー メッセージは、「ページの読み込み中に ws://.../websocket への接続が中断されました」です。接続は、毎秒ページの読み込みを開くのではなく、ページの読み込み中に閉じられます。Websocket-Rails gem)

==> first page load
[ConnectionManager] Connection opened: #<Connection::fef69428febee72f4830>
[Channel] #<Connection::fef69428febee72f4830> subscribed to channel xyz

==> second page load
[Channel] #<Connection::dfc4b33090b95826e08e> unsubscribed from channel xyz
[ConnectionManager] Connection closed: #<Connection::dfc4b33090b95826e08e>

onbeforeunload(Coffeescriptのような)Javascriptイベントで開いているすべてのソケットと接続を閉じる方法はありますか..

  window.onbeforeunload = () ->
    close_all_sockets()
4

1 に答える 1