WebSockets haben die Echtzeitkommunikation im Web revolutioniert und bidirektionale, Vollduplex-Kommunikationskanäle über eine einzelne TCP-Verbindung ermöglicht. Mit Node.js, einer leistungsstarken JavaScript-Laufzeitumgebung, wird die Nutzung der Fähigkeiten von WebSockets noch zugänglicher und effizienter.
In diesem Leitfaden führen wir Sie durch den Prozess der Integration und Verwendung von WebSockets in Node.js.
Was ist WebSocket?
Bevor Sie mit der Implementierung beginnen, ist es wichtig zu verstehen, was WebSockets sind und wie sie sich von herkömmlichen HTTP-Anfragen unterscheiden. Im Gegensatz zu HTTP, das einem Anfrage-Antwort-Modell folgt, bieten WebSockets persistente Verbindungen zwischen Clients und Servern und ermöglichen so einen Echtzeit-Datenaustausch mit geringer Latenz.
Dies macht sie ideal für Anwendungen, die sofortige Updates erfordern, wie z. B. Chat-Anwendungen, Multiplayer-Spiele und kollaborative Tools.

WebSocket-Anwendungsfälle
WebSocket ist in den folgenden Szenarien besonders sinnvoll:
- Echtzeit-Benachrichtigungssysteme: Benachrichtigen Sie Clients sofort, wenn neue Daten auf dem Server verfügbar sind.
- Online-Chatten: Erstellen Sie Echtzeit-Chat-Anwendungen, um die sofortige Kommunikation zwischen Benutzern zu ermöglichen.
- Echtzeit-Collaboration-Tools: Verwenden Sie sie für die gemeinsame Nutzung von Dokumenten, die Bearbeitung von Grafiken oder andere kollaborative Arbeiten in Echtzeit.
- Online-Gaming: Ermöglichen Sie Echtzeit-Interaktion und -Synchronisierung zwischen Spielern.
- Echtzeit-Überwachungssysteme: Überwachen Sie den Systemstatus und benachrichtigen Sie Administratoren sofort.
Einrichten eines Node.js-Projekts
Um zu beginnen, stellen Sie sicher, dass Sie Node.js auf Ihrem System installiert haben. Sie können Ihre Installation überprüfen, indem Sie node -v
in Ihrem Terminal ausführen.

Erstellen Sie nach der Bestätigung ein neues Verzeichnis für Ihr Projekt und navigieren Sie dorthin.
mkdir websocket-example
cd websocket-example
Initialisieren Sie ein neues Node.js-Projekt mit npm:
npm init -y
Dieser Befehl erstellt eine package.json
-Datei mit Standardeinstellungen. Installieren Sie als Nächstes das ws
-Paket, eine beliebte WebSocket-Bibliothek für Node.js:
npm install ws
Implementieren eines WebSocket-Servers
Erstellen wir mit dem eingerichteten Projekt einen WebSocket-Server mit der ws
-Bibliothek. Erstellen Sie eine neue Datei mit dem Namen server.js
in Ihrem Projektverzeichnis und fügen Sie den folgenden Code hinzu:
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', function connection(ws) {console.log('A new client connected.');
ws.on('message', function incoming(message) {console.log('Received: %s', message);
});
ws.send('Welcome to the WebSocket server!');
});
Dieser Code initialisiert einen WebSocket-Server an Port 8080
und lauscht auf eingehende Verbindungen. Bei der Verbindung protokolliert er eine Nachricht und richtet einen Ereignis-Listener für eingehende Nachrichten ein. Außerdem sendet er eine Willkommensnachricht an den Client.
Erstellen eines WebSocket-Clients
Erstellen wir nun einen einfachen WebSocket-Client, um eine Verbindung zu unserem Server herzustellen. Erstellen Sie eine neue Datei mit dem Namen client.js
im Projektverzeichnis und fügen Sie den folgenden Code hinzu:
const WebSocket = require('ws');
const ws = new WebSocket('ws://localhost:8080');
ws.on('open', function open() {console.log('Connected to the server.');
});
ws.on('message', function incoming(data) {console.log('Received from server: %s', data);
});
Dieser Code stellt eine WebSocket-Verbindung zu ws://``localhost:8080
her und protokolliert eine Nachricht bei erfolgreicher Verbindung. Außerdem richtet er einen Ereignis-Listener ein, um Nachrichten vom Server zu empfangen.
Ausführen der Anwendung
Stellen Sie vor dem Ausführen der Anwendung sicher, dass der WebSocket-Server (server.js) ausgeführt wird. Sie können ihn starten, indem Sie Folgendes ausführen:
node server.js
Sobald der Server läuft, führen Sie das Client-Skript (client.js) in einem anderen Terminalfenster aus:
node client.js
Sie sollten Nachrichten sehen, die erfolgreiche Verbindungen sowohl vom Server als auch vom Client anzeigen.
Apidog: Optimierung des WebSocket-API-Tests

Anstatt Node.js sollten Sie Apidog in Betracht ziehen, ein ausgezeichnetes Tool, das Postman für vielseitige API-Tests ähnelt. Apidog unterstützt WebSocket-API-Tests und bietet benutzerfreundliche Oberflächen zum Erstellen, Verwalten und Testen von WebSocket-APIs.