Socket.IO est une bibliothèque JavaScript pour les applications Web en temps réel. Elle permet une communication bidirectionnelle en temps réel entre les clients Web et les serveurs. Voici un exemple basique de comment l’utiliser pour créer une application de chat en temps réel.
Avant d’entrer dans le code, assurez-vous d’avoir installé Node.js et npm (gestionnaire de paquets Node).
1. Installation Tout d’abord, vous devez installer Express et Socket.IO. Créez un nouveau dossier pour votre application puis exécutez les commandes suivantes : \`\`\` npm init -y npm install express socket.io \`\`\`
1. Configuration du serveur Créez un nouveau fichier appelé `server.js` et ajoutez-y le code suivant : \`\`\`javascript const express = require(‘express’); const http = require(‘http’); const socketIO = require(‘socket.io’);
const app = express(); const server = http.Server(app); const io = socketIO(server); io.on(‘connection’, (socket) => { console.log(‘a user connected’); socket.on(‘chat message’, (msg) => { io.emit(‘chat message’, msg); }); socket.on(‘disconnect’, () => { console.log(‘user disconnected’); }); }); server.listen(3000, () => { console.log(‘listening on \*:3000’); }); \`\`\` Dans ce code, chaque fois qu’un client se connecte, il affiche “a user connected”, et quand un client se déconnecte, il affiche “user disconnected”. Quand le serveur reçoit un message de “chat message” d’un client, il le transmet à tous les clients.1. Configuration du client Créez un nouveau fichier `index.html` dans un dossier `public` et ajoutez-y le code suivant : \`\`\`html
1. Dernier pas consiste à exposer le dossier `public` pour qu’il soit accessible depuis le web. Pour ce faire, ajoutez cette ligne dans votre fichier `server.js`, juste avant la création du serveur HTTP :
\`\`\`javascript app.use(express.static(‘public’)); \`\`\`1. Pour exécuter l’application, ouvrez l’invite de commande, accédez à votre dossier d’application et tapez : \`\`\` node server.js \`\`\`
1. Pour utiliser l’application, ouvrez votre navigateur et accédez à `http://localhost:3000`. Vous devriez voir votre application de chat en temps réel fonctionner.