Programming

WebSocket Real-Time Communication

12 ديسمبر 202511 min read
WebSocket Real-Time Communication

Build real-time applications with WebSocket and Socket.io.

What Is WebSocket?

WebSocket enables persistent bidirectional communication. Perfect for chat apps, notifications, live updates, and games.

Socket.io Server

const io = require('socket.io')(server);

io.on('connection', (socket) => {
  console.log('User connected:', socket.id);
  
  socket.on('chat message', (msg) => {
    io.emit('chat message', msg); // Broadcast to all
  });
  
  socket.on('disconnect', () => {
    console.log('User disconnected');
  });
});

Socket.io Client

import { io } from 'socket.io-client';

const socket = io('http://localhost:3000');

socket.on('connect', () => {
  console.log('Connected!');
});

socket.emit('chat message', 'Hello!');

socket.on('chat message', (msg) => {
  displayMessage(msg);
});

Rooms for Groups

// Join a room
socket.join('room-123');

// Send to room only
io.to('room-123').emit('message', 'Room message');

// Leave room
socket.leave('room-123');

Conclusion

Socket.io simplifies real-time development significantly. Consider alternatives like Pusher for managed solutions.

Tags

#WebSocket#Socket.io#Real-time#Node.js#Chat

Related Posts