2016-10-17 10 views
5

onerrorコールバックが呼び出され、直後にoncloseが呼び出されない可能性はありますか?言い換えれば、接続と一致しないで閉じているWebSocketエラーを取得することは可能ですか?WebSocketのonerrorの後にoncloseが常に呼び出されます

可能であれば、このケースをテストしたいと思います。私はnode.jsとexpress-wsを使った嘲笑されたバックエンドを持っています。フロントエンドでonerrorイベントコールバックをトリガーするためにバックエンドで何ができますか。

答えて

6

errorイベントは今まで、その後もcloseイベントを発射する前に解雇され、少なくとも適切に仕様を実装する実装によって、あなたはペアとしてerrorcloseを取得、または単にclose自身でますすなわち。

process for closing a websocket consists of 3 steps、必要に応じて任意にerrorイベントを発生された第2:

  • ユーザエージェントは、WebSocketの接続に失敗することが必要とされた場合、またはWebSocket接続が完全であるとフラグが立てられた後に閉じられた場合、WebSocketオブジェクトにerrorという単純なイベントを発生させます。 [WSP]第三の工程は、次に近い呼び出し
  • 前:

  • イベントタイプcloseと、CloseEventインターフェースを使用し、信頼できるイベントを作成します。 ...
  • そして、これらのステップの両方が同じキューに入れられたタスク内の他の後に1をされているので、あなたのイベントハンドラがあるべきそれらの間で他のイベントやタスクが発生することはありません。

    関連する問題