,

NodeJS #09 – Using ExpressJS for Sessions

Posted by





NodeJS #09 – Les sessions avec ExpressJS

NodeJS #09 – Les sessions avec ExpressJS

Les sessions sont des éléments essentiels dans le développement web. Elles permettent de stocker des informations utilisateur de manière temporaire tout au long de la durée de la navigation. Dans cette leçon, nous allons apprendre comment gérer les sessions avec ExpressJS, un framework web populaire pour NodeJS.

Configuration d’ExpressJS pour les sessions

Pour activer la gestion des sessions dans ExpressJS, nous devons installer le package “express-session” via npm. Ensuite, nous pouvons l’importer dans notre fichier principal et le configurer en utilisant la méthode “use” de l’objet app d’Express.

    
const express = require('express');
const session = require('express-session');

const app = express();

app.use(session({
  secret: 'mysecretkey',
  resave: false,
  saveUninitialized: true
}));
    
  

Utilisation des sessions

Une fois que la session est configurée, nous pouvons l’utiliser pour stocker des informations utilisateur. Par exemple, nous pouvons stocker l’ID de l’utilisateur connecté pour le reconnaitre dans les requêtes suivantes.

    
app.get('/login', (req, res) => {
  // Vérifier les informations d'identification de l'utilisateur
  // ...

  // Stocker l'ID de l'utilisateur dans la session
  req.session.userId = user.id;

  res.send('Connecté avec succès!');
});
    
  

Gestion des sessions dans les requêtes

Nous pouvons accéder aux informations stockées dans la session à tout moment dans nos routes. Par exemple, pour vérifier si un utilisateur est connecté, nous pouvons simplement vérifier si l’ID de l’utilisateur est défini dans la session.

    
app.get('/profile', (req, res) => {
  if (req.session.userId) {
    // L'utilisateur est connecté, afficher sa page de profil
    // ...
  } else {
    // L'utilisateur n'est pas connecté, rediriger vers la page de connexion
    res.redirect('/login');
  }
});
    
  

Conclusion

Les sessions sont un élément crucial dans le développement web, et ExpressJS offre une manière simple et efficace de les gérer. En utilisant le package “express-session”, nous pouvons facilement configurer et utiliser des sessions dans nos applications web NodeJS.