| File | Description | Status |
|---|---|---|
| WebSocket | WebSocket Fundamentals | ✅ Done |
| Feature | HTTP | WebSocket | |———|——|———–| | Connection | Request-Response | Persistent | | Direction | Client-initiated | Bidirectional | | Overhead | Headers each time | Low after handshake | | Use Case | REST APIs | Real-time apps |
1. Client: HTTP Upgrade Request
2. Server: 101 Switching Protocols
3. Both: Full-duplex communication
4. Either: Close connection
const ws = new WebSocket('ws://localhost:8080');
ws.onopen = () => {
console.log('Connected');
ws.send('Hello Server!');
};
ws.onmessage = (event) => {
console.log('Received:', event.data);
};
ws.onclose = () => {
console.log('Disconnected');
};
ws.onerror = (error) => {
console.error('Error:', error);
};
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', (ws) => {
ws.on('message', (message) => {
console.log('Received:', message);
ws.send('Echo: ' + message);
});
});
Last Updated: March 2026