WebSockets - Ereignisse und Aktionen
Für die Kommunikation zwischen den Clients muss die Verbindung zum Server vom Client aus initialisiert werden. Zum Initialisieren der Verbindung muss ein Javascript-Objekt mit der URL zum Remote- oder lokalen Server erstellt werden.
var socket = new WebSocket(“ ws://echo.websocket.org ”);
Die oben genannte URL ist eine öffentliche Adresse, die für Tests und Experimente verwendet werden kann. Der Server von websocket.org ist immer aktiv und wenn er die Nachricht empfängt und an den Client zurücksendet.
Dies ist der wichtigste Schritt, um sicherzustellen, dass die Anwendung ordnungsgemäß funktioniert.
Web Sockets - Ereignisse
Es gibt vier Haupt-Web-Socket-APIs events - -
- Open
- Message
- Close
- Error
Jedes der Ereignisse wird durch Implementieren der Funktionen wie behandelt onopen, onmessage, onclose und onerrorFunktionen jeweils. Es kann auch mit Hilfe der addEventListener-Methode implementiert werden.
Die kurze Übersicht über die Ereignisse und Funktionen wird wie folgt beschrieben:
Öffnen
Sobald die Verbindung zwischen dem Client und dem Server hergestellt wurde, wird das offene Ereignis von der Web Socket-Instanz ausgelöst. Es wird als anfänglicher Handshake zwischen Client und Server bezeichnet. Das Ereignis, das ausgelöst wird, sobald die Verbindung hergestellt ist, wird aufgerufenonopen.
Botschaft
Nachrichtenereignis tritt normalerweise auf, wenn der Server einige Daten sendet. Vom Server an den Client gesendete Nachrichten können Nur-Text-Nachrichten, Binärdaten oder Bilder enthalten. Wann immer die Daten gesendet werden, wird dieonmessage Funktion wird ausgelöst.
Schließen
Das Ereignis "Schließen" markiert das Ende der Kommunikation zwischen Server und Client. Das Schließen der Verbindung ist mit Hilfe von möglichoncloseVeranstaltung. Nach dem Markieren des Kommunikationsende mit Hilfe vononcloseIm Ereignisfall können keine Nachrichten weiter zwischen dem Server und dem Client übertragen werden. Das Schließen des Ereignisses kann auch aufgrund einer schlechten Konnektivität erfolgen.
Error
Fehlermarkierungen für einen Fehler, der während der Kommunikation auftritt. Es wird mit Hilfe von markiertonerror Veranstaltung. OnerrorEs folgt immer die Beendigung der Verbindung. Die detaillierte Beschreibung jedes einzelnen Ereignisses wird in weiteren Kapiteln erläutert.
Web Sockets - Aktionen
Ereignisse werden normalerweise ausgelöst, wenn etwas passiert. Andererseits werden Aktionen ausgeführt, wenn ein Benutzer möchte, dass etwas passiert. Aktionen werden durch explizite Aufrufe mit Funktionen von Benutzern ausgeführt.
Das Web Socket-Protokoll unterstützt zwei Hauptaktionen:
- senden( )
- schließen( )
senden ( )
Diese Aktion wird normalerweise für die Kommunikation mit dem Server bevorzugt, einschließlich des Sendens von Nachrichten, einschließlich Textdateien, Binärdaten oder Bildern.
Eine Chat-Nachricht, die mit Hilfe der Aktion send () gesendet wird, lautet wie folgt:
// get text view and button for submitting the message
var textsend = document.getElementById(“text-view”);
var submitMsg = document.getElementById(“tsend-button”);
//Handling the click event
submitMsg.onclick = function ( ) {
// Send the data
socket.send( textsend.value);
}
Note - Das Senden der Nachrichten ist nur möglich, wenn die Verbindung geöffnet ist.
schließen ( )
Diese Methode steht für Goodbye Handshake. Die Verbindung wird vollständig beendet und es können keine Daten übertragen werden, bis die Verbindung wiederhergestellt ist.
var textsend = document.getElementById(“text-view”);
var buttonStop = document.getElementById(“stop-button”);
//Handling the click event
buttonStop.onclick = function ( ) {
// Close the connection if open
if (socket.readyState === WebSocket.OPEN){
socket.close( );
}
}
Es ist auch möglich, die Verbindung absichtlich mit Hilfe des folgenden Code-Snippets zu schließen -
socket.close(1000,”Deliberate Connection”);