How to get the current status of a javascript websocket connection

Johnride picture Johnride · Apr 29, 2014 · Viewed 60.4k times · Source

Sometimes when I restart the server or there is a network failure the websocket gets closed and I would like to be able to get the current connection status at all time.

I am basically getting the following error and I want to be able to predict it :

WebSocket is already in CLOSING or CLOSED state. 
    (anonymous function) 
    InjectedScript._evaluateOn 
    InjectedScript._evaluateAndWrap 
    InjectedScript.evaluate

Answer

Johnride picture Johnride · Apr 29, 2014

This is very straightforward : thereadyState property of the websocket contains the connection of the websocket at all times as specified in the WebSocket API

It will be one of the following values : CONNECTING OPEN CLOSING or CLOSED

A way to work around the error would be something like this :

if (yourWsObject.readyState === WebSocket.CLOSED) {
   // Do your stuff...
}