JavaScript метод WebSocket.send()
JavaScript WebSocketОпределение и применение
JavaScript метод send() объекта WebSocket позволяет передать данные на сервер через WebSocket соединение.
Обращаю Ваше внимание на то, что если данные не могут быть отправлены (например, потому что они должны быть буферизованы, но буфер заполнен), то в этом случае сокет закрывается автоматически.
Поддержка браузерами
Метод | Chrome | Firefox | Opera | Safari | IExplorer | Edge |
---|---|---|---|---|---|---|
send() | Да | Да | Да | Да | 10.0 | Да |
JavaScript синтаксис:
WebSocket.send(data); data - Any
Cпецификация
WebSocketЗначения параметров
Параметр | Описание |
---|---|
data | Данные, предназначенные для отправки на сервер. Они могут быть одним из следующих типов:
|
Исключения
Тип исключения | Описание |
---|---|
INVALID_STATE_ERR | Возникает в том случае, если соединение в настоящее время не открыто. |
SYNTAX_ERR | Возникает в том случае, если данные представляют из себя строку, которая содержит непарные суррогаты. |
Пример использования
// создаем WebSocket подключение const socket = new WebSocket("ws://localhost:8080"); // устанавливаем обработчик событий, вызываемый при открытии соединения socket.onopen = function(event) { socket.send("соединение с сервером установлено"); // отправляем определенные данные в формате JSON socket.send(JSON.stringify(data)); }; // устанавливаем обработчик событий, вызываемый при получении сообщения от сервера socket.onmessage = function(event) { console.log("сообщение от сервера получено", event.data); } // устанавливаем обработчик событий, вызываемый при ошибке socket.onerror = function(event) { console.error("Ошибка WebSocket"); socket.close(); // закрываем подключение к серверу } // устанавливаем обработчик событий, вызываемый при закрытии соединения socket.onclose = function(event) { socket.send("соединение с сервером завершено"); }JavaScript WebSocket