I trying to implement chat application using websockets.But the problem is , it is working only with safari 5. When am trying to execute in Firefox v14 or Chrome v21 ,am getting the error "Unsupported Websocket version: 13".I think these versions of Firefox and Chrome supports Websockets but i dont know to eliminate that error.
http://angelozerr.wordpress.com/2011/07/23/websockets_jetty_step1/ From this URL i wrote source code chat App.
Please help me.
Thanks in Advance.
Safari 5 supports only a legacy draft version of WebSocket. All of the current versions of the other browsers (including safari 6) support the final RFC 6455 version (which is version 13). It is likely that the websocket server that you are using only supports draft spec clients. You may need to upgrade to the latest version of your server software/library or otherwise double check that your websocket server supports RFC6455.
Related
Is HTTP Server API in Windows OS (https://learn.microsoft.com/en-us/windows/win32/http/http-api-start-page) still maintained. I see it supports only till SSLv3 as mentioned in the link https://learn.microsoft.com/en-us/windows/win32/http/http-server-api-features. Can it be made to work with TLS1.2. Thank You
I am trying to setup an app working with SockJS over STOMP. However, it seems that the connection is not established. I do not have these issues with running all on Chrome, FF and so on.
Is there a way to support this for IE9? Or is it impossible to run websockets with sockjs on IE9? I saw some discussions where people were solving some issues with IE9 and sockjs but none providing a solution to my issue.
BR
The issue is resolved. SockJS emulates websockets on IE9 with no issue. The only thing that I had to do was to provide absolute path for creating the SockJS object.
Before:
var webSocket = new SockJS('topic/publish');
After:
var webSocket = new SockJS('http://localhost:8080/topic/publish');
Although it was working with Chrome and Firefox, there were issues to run it on IE9 that doesn't support websockets (out of the box).
Internet Explorer 9 does not support websockets http://caniuse.com/websockets.
You can use a polyfill based on Flash like https://github.com/gimite/web-socket-js
Currently im using private_pub + faye to have some basic streaming in Rails 4 project.
Would it be possible to replace faye and private_pub and use Rails 4 streaming ( server send events instead ?)
Im just pushing data to the client and the client does not communicate back to the server for anything so it seems like it should be possible.
How does faye web sockets compare to rails 4 inside internet exploder browser? Is it compatible?
To run Rails 4 streaming you need at least Chrome 9+, Firefox 6.0+, Opera 11+, Safari 5+, iOS Safari 4.0+, Blackberry, Opera Mobile, Chrome for Android or Firefox for Android. For older versions of IE, you can use EventSource polyfill but one of the downsides of SSEs is that they do not support bi-directional communication.
Faye should run in any browser capable of one of the following:
WebSockets (including the Firefox 6 and Chrome 14 implementations as of 0.6.4)
XMLHttpRequest
CORS
JSON-P
Basically, the biggest diference between two solution is that Faye is based on Bayeux protocol, this means that the Faye should works in all browsers and servers that implements Bayeux protocol (currently Faye server implements Node.js and Ruby)
I think is better continue with private_pub and Faye because both are more stable and you can find more information about them on the internet.
I hope this helps.
I tried to look this over in the Netty documentation but was unable to find it : which all websocket protocols does Netty websocket implementation support ?
I am trying to check for browser compatibility and hence also wanted to see the protocols as mentioned above. Going through the websocket server example in Netty 3.5.3 , I see in the WebSocketServerIndexPage class that window.MozWebSocket is also used , hence am I right that hybi-07 and hybi-10 is also supported without any specific code to be written? (Pardon me I am not much aware of the differences in the various protocols but it seems to be mentioned everywhere).
Netty supports protocol versions HyBi 00 (which is the same as Hixie 76), HyBi 8-10 and HyBi 13-17 (17 is the same as IETF 6455).
Each browser supports a single version of the protocol. HyBi 00-76 covers current released versions of iOS. IETF 6455 covers recent versions of Chrome and Firefox (and Opera if once they enable it by default), and IE 10. For browsers without native WebSocket support but with Flash you can use web-socket-js as a fallback and that supports IETF 6455 (albeit without binary data types).
In other words, Netty supports basically all browsers that have WebSocket support.
According to the netty api docs, it supports 3 versions of the Hybi drafts - 00, 07 and 10 as well as RFC 6455.
This will give you support for most browsers as summarised by http://en.wikipedia.org/wiki/WebSocket.
I was doing AJAX implementation and would like to use Websocket when the client web browser supports it. Is there any frameworks that supports Websocket but falls-back to other methods when it detects the client side doesn't support Websocket.
There is also Atmosphere
http://atmosphere.dev.java.net
which support both client and server.
Yes sort of see www.kaazing.org
Kaazing Gateway supports all major browsers (Firefox version 1.5 and higher, Internet Explorer version 5.5 and higher, Safari version 3.0 and higher, Opera version 9.5 and higher, and Google Chrome version 0.2 and higher).
Socket.io is designed for this.
http://socket.io/
It is purely javascript that tries several different transport methods including XHR long-polling, WebSocket and FlashSocket amongst others.
You could also use Nirvana from www.my-channels.com.
When WebSocket is not supported it will fall back to a Comet based approach transparently.
Of course, you could try using jWebSocket, it is a pure Java/JavaScript high speed bidirectional communication solution for the Web - secure, reliable and fast. jWebSocket is provided to you to create innovative HTML5 based streaming and communication applications on the web. HTML5 WebSockets will replace the existing XHR approaches as well as Comet services by a new flexible and ultra high speed bidirectional TCP socket communication technology. jWebSocket is an open source Java and JavaScript implementation of the HTML5 WebSocket protocol with a huge set of extensions. Some demos or examples can be seen for you in the website, you can visit it here: https://jwebsocket.org/