class js.html.WebSocket extends EventTarget

Available on js

This is an experimental feature
Because this feature is still in development in some browsers, check the compatibility table for the proper prefixes to use in various browsers.

The WebSocket object provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection.



Documentation for this class was provided by MDN.

Class Fields

static var CLOSED:Int

The connection is closed or couldn't be opened.

static var CLOSING:Int

The connection is in the process of closing.

static var CONNECTING:Int

The connection is not yet open.

static var OPEN:Int

The connection is open and ready to communicate.

Instance Fields

var binaryType:String

A string indicating the type of binary data being transmitted by the connection. This should be either "blob" if DOM Blob  objects are being used or "arraybuffer" if ArrayBuffer objects are being used.

var bufferedAmount:Int

The number of bytes of data that have been queued using calls to but not yet transmitted to the network. This value does not reset to zero when the connection is closed; if you keep calling , this will continue to climb. Read only.

var extensions:String

The extensions selected by the server. This is currently only the empty string or a list of extensions as negotiated by the connection.

var onclose:EventListener

An event listener to be called when the WebSocket connection's readyState changes to CLOSED. The listener receives a CloseEvent named "close".

var onerror:EventListener

An event listener to be called when an error occurs. This is a simple event named "error".

var onmessage:EventListener

An event listener to be called when a message is received from the server. The listener receives a MessageEvent named "message".

var onopen:EventListener

An event listener to be called when the WebSocket connection's readyState changes to OPEN; this indicates that the connection is ready to send and receive data. The event is a simple one with the name "open".

var protocol:String

A string indicating the name of the sub-protocol the server selected; this will be one of the strings specified in the protocols parameter when creating the WebSocket object.

var readyState:Int

The current state of the connection; this is one of the Ready state constants. Read only.

var url:String

The URL as resolved by the constructor. This is always an absolute URL. Read only.

function new(?arg0:Dynamic):Void

function close(?code:Int, ?reason:String):Void

function send(data:String):Bool

function send(data:ArrayBuffer):Bool

function send(data:ArrayBufferView):Bool

function send(data:Blob):Bool

Transmits data to the server over the WebSocket connection.

Parameters
data
A text string to send to the server.
Exceptions thrown
INVALID_STATE_ERR
The connection is not currently OPEN.
SYNTAX_ERR
The data is a string that has unpaired surrogates.
Remarks

Gecko 6.0 note
(Firefox 6.0 / Thunderbird 6.0 / SeaMonkey 2.3)

Gecko's implementation of the send() method differs somewhat from the specification in Gecko 6.0; Gecko returns a boolean indicating whether or not the connection is still open (and, by extension, that the data was successfully queued or transmitted); this is corrected in Gecko 8.0 (Firefox 8.0 / Thunderbird 8.0 / SeaMonkey 2.5) . In addition, at this time, Gecko does not support ArrayBuffer or Blob data types.

Throws DOMException.