Went through the sock JS client code :I went through the client code -sock JS takes care of it -if its HTTPS it uses WSS else it does WS
var that = this;
var url = trans_url + '/websocket';
if (url.slice(0, 5) === 'https') {
url = 'wss' + url.slice(5);
} else {
url = 'ws' + url.slice(4);
}
No need to pass WS or WSS (In fact not even HTTP/HTTPS) with the SockJS constructor -just relative URL is sufficient. SockJs client library takes care of it. One more surprising fact I encountered, it appends "/websocket" at end of the URL -this gave me clue why I was not able to connect with java client using jetty websocket-client apis