...Under the hood SockJS tries to use native WebSockets first. If that fails it can use a variety of browser-specific transport protocols and presents them through WebSocket-like abstractions. SockJS is intended to work for all modern browsers and in environments which don't support the WebSocket protocol, for example, behind restrictive corporate proxies. SockJS-client does require a server counterpart, such as SockJS-node, which is a SockJS server for Node.js. The API should follow HTML5 Websockets API as closely as possible. All the transports must support cross domain connections out of the box. ...