Clone this wiki locally
The WebSocket protocol has been evolving since 2009. The different specifications have different features which are incompatible with each other.
For every protocol version that affects the way bytes are transfered there is a corresponding class derived from
Draft. The protocol version implementaions will be referenced to as drafts from now onwards.
WebSocketServer detects any draft of a connecting client by default.
WebSocketClient on the other hand is the one who initiates the connection and therefore has to decide which draft to use.
By enabling the debug mode
WebSocketImpl.DEBUG = true;)
the used Draft(s) will show up in the console(std::out).
Draft10 implements Hybi 10.
This draft is supported by Chrome15 and Firefox6-9.
Draft17 implements Hybi 17/RFC 6455 and is currently supported by Chrome16+ and IE10.
Since this protocol version made it into an RFC state it is expected to last longer than a month.
Sooner or later most/all browsers will probably upgrade to support this draft.
Draft75 implements Hixie 75.
You should no longer relay on this drafts since it is deprecated and not supported by current browsers! Why Chrome dropped WebSocket backwards compatibility.
Draft76 implements Hixie 76.
You should no longer relay on this draft since it is deprecated and not supported by current browsers! Why Chrome dropped WebSocket backwards compatibility.