Comment Créer et Déployer un Serveur Web avec Express.js sur Node.js

Par sbenothman, 20 février, 2025
express.js

Qu'est-ce qu'Express.js et comment cela se relie à Node.js ?

Express.js est un framework léger pour Node.js qui facilite la création de serveurs web et d'API. Il offre des outils pour gérer les requêtes HTTP, les routes, les middleware, et la sécurité, rendant le développement web plus rapide et plus simple.

Express.js simplifie la gestion des requêtes et des réponses, permettant aux développeurs de se concentrer sur la logique de l'application sans devoir coder chaque fonctionnalité de base. Dans cet article, nous vous montrons comment utiliser Express.js pour créer un serveur web avec Node.js.

a. Installation d'Express.js

Avant de commencer, assurez-vous que Node.js est installé sur votre machine (si ce n’est pas déjà fait). Vous pouvez vérifier en utilisant la commande suivante dans votre terminal :

node -v

Ensuite, pour installer Express.js, ouvrez un terminal dans votre dossier de projet et exécutez :

npm init -y
npm install express

La première commande initialise un projet Node.js (si ce n’est pas déjà fait), et la deuxième installe Express.js via npm.

b. Vérification de l'installation

Après l'installation, vérifiez que tout est en ordre en ouvrant votre fichier package.json. Vous devriez voir Express dans la section des dépendances :

"dependencies": {
  "express": "^4.17.1"
}

2. Création d’un Serveur Web avec Express.js

Passons à la création d'un serveur web simple avec Express.js.

a. Création du fichier serveur

Dans votre dossier de projet, créez un fichier server.js :

touch server.js

Ouvrez ce fichier dans un éditeur de texte et ajoutez le code suivant :

const express = require('express');
const app = express();
const PORT = 3000;

// Route principale
app.get('/', (req, res) => {
    res.send('Hello, Express.js!');
});

// Lancement du serveur
app.listen(PORT, () => {
    console.log(`Serveur en cours d'exécution sur http://localhost:${PORT}`);
});

b. Explication du code

  • Importation d'Express : Nous importons le module Express.js pour créer notre serveur.
  • Création de l'application : Nous créons une instance d'Express avec express().
  • Définition de la route : La méthode app.get() définit une route pour la page d'accueil ("/"). Quand cette route est appelée, le serveur envoie la réponse "Hello, Express.js!".
  • Lancement du serveur : Enfin, nous démarrons le serveur sur le port 3000 avec app.listen().

c. Lancement du serveur

Dans votre terminal, exécutez la commande suivante pour démarrer le serveur :

node server.js

Vous devriez voir le message :

Serveur en cours d'exécution sur http://localhost:3000

Ouvrez votre navigateur et entrez l'URL suivante : http://localhost:3000. Vous verrez s’afficher "Hello, Express.js!".

3. Gestion des Routes et Middleware

a. Ajouter d'autres routes

Dans Express.js, il est facile d'ajouter des routes pour gérer différents types de requêtes. Par exemple, ajoutons une route pour la méthode POST :

app.post('/submit', (req, res) => {
    res.send('Données soumises avec succès!');
});

b. Utilisation des Middleware

Les middleware sont des fonctions qui s'exécutent avant la gestion des requêtes. Utilisons un middleware pour enregistrer chaque requête qui arrive sur notre serveur :

app.use((req, res, next) => {
    console.log(`${req.method} ${req.url}`);
    next();
});

Cela affichera la méthode HTTP et l'URL de chaque requête dans la console.

4. Déploiement sur Heroku

Une fois que votre serveur est prêt et fonctionnel, il est temps de le déployer sur Heroku, une plateforme cloud populaire pour les applications Node.js.

a. Création d'un compte Heroku

Si vous n'avez pas encore de compte Heroku, rendez-vous sur heroku.com et inscrivez-vous gratuitement.

b. Préparer l'application pour Heroku

Avant de déployer, créez un fichier Procfile dans le dossier de votre projet, qui indique à Heroku comment exécuter votre application :

echo "web: node server.js" > Procfile

Ensuite, initialisez un dépôt Git dans votre projet (si ce n’est pas déjà fait) :

git init
git add .
git commit -m "Initial commit"

c. Déploiement sur Heroku

Connectez-vous à Heroku via le terminal :

heroku login

Ensuite, créez une application Heroku et déployez votre code :

heroku create
git push heroku master

Une fois le déploiement terminé, Heroku vous fournira une URL pour accéder à votre serveur en ligne.

5. Conclusion

Félicitations ! Vous avez maintenant créé et déployé un serveur web avec Express.js sur Node.js. Dans le prochain article, nous explorerons les fonctionnalités avancées d'Express.js, telles que la gestion des erreurs, les sessions utilisateurs et la connexion à une base de données.

Ressources

Commentaires1

kariste

il y a 1 mois

J'aime la façon dont tu as expliqué la création et le déploiement. C'est clair et précis.