The WebSocket.send()
method enqueues the specified data to be transmitted to the server over the WebSocket connection, increasing the value of bufferedAmount
by the number of bytes needed to contain the data. If the data can't be sent (for example, because it needs to be buffered but the buffer is full), the socket is closed automatically.
aWebSocket.send("Hello server!");
data
USVString
bufferedAmount
is increased by the number of bytes required to represent the UTF-8 string.ArrayBuffer
bufferedAmount
by the requisite number of bytes.Blob
Blob
enqueues the blob's raw data to be transmitted in a binary frame. The value of bufferedAmount
is increased by the byte size of that raw data.ArrayBufferView
bufferedAmount
by the requisite number of bytes.INVALID_STATE_ERR
OPEN
.SYNTAX_ERR
Note: 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.
As of Gecko 11.0, support for ArrayBuffer
is implemented but not Blob
data types.
Specification | Status | Comment |
---|---|---|
HTML Living Standard The definition of 'WebSocket: send' in that specification. | Living Standard | Initial definition |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | Yes | ? | 18
|
? | Yes | ? |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | ? | Yes | ? | Yes | ? | ? | ? |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/send