WebSockets - открытие подключений
Как только соединение между клиентом и сервером установлено, событие open запускается из экземпляра Web Socket. Это называется начальным рукопожатием между клиентом и сервером.
Событие, которое возникает после установления соединения, называется onopen. Создание соединений через веб-сокеты действительно просто. Все, что вам нужно сделать, это позвонить вWebSocket constructor и передайте URL-адрес вашего сервера.
Следующий код используется для создания подключения к веб-сокету -
// Create a new WebSocket.
var socket = new WebSocket('ws://echo.websocket.org');
Как только соединение будет установлено, в вашем экземпляре веб-сокета будет запущено событие open.
onopen относится к начальному рукопожатию между клиентом и сервером, которое привело к первой сделке, и веб-приложение готово передать данные.
В следующем фрагменте кода описывается открытие соединения по протоколу Web Socket -
socket.onopen = function(event) {
console.log(“Connection established”);
// Display user friendly messages for the successful establishment of connection
var.label = document.getElementById(“status”);
label.innerHTML = ”Connection established”;
}
Хорошей практикой является предоставление соответствующей обратной связи пользователям, ожидающим установления соединения с веб-сокетом. Однако всегда отмечается, что соединения через веб-сокеты сравнительно быстрые.
Демонстрация установленного соединения с веб-сокетом задокументирована по указанному URL-адресу - https://www.websocket.org/echo.html
Снимок установки соединения и ответа пользователю показан ниже -
Установление открытого состояния позволяет осуществлять полнодуплексную связь и передачу сообщений до тех пор, пока соединение не будет разорвано.
пример
Создание файла client-HTML5.
<!DOCTYPE html>
<html>
<meta charset = "utf-8" />
<title>WebSocket Test</title>
<script language = "javascript" type = "text/javascript">
var wsUri = "ws://echo.websocket.org/";
var output;
function init() {
output = document.getElementById("output");
testWebSocket();
}
function testWebSocket() {
websocket = new WebSocket(wsUri);
websocket.onopen = function(evt) {
onOpen(evt)
};
}
function onOpen(evt) {
writeToScreen("CONNECTED");
}
window.addEventListener("load", init, false);
</script>
<h2>WebSocket Test</h2>
<div id = "output"></div>
</html>
Результат будет следующим -
Приведенный выше файл HTML5 и JavaScript показывает реализацию двух событий Web Socket, а именно:
onLoad который помогает в создании объекта JavaScript и инициализации соединения.
onOpen устанавливает соединение с сервером, а также отправляет статус.