Node.js - 5.10 Ajouter une page d'erreur 404

Une adresse qui ne correspond à aucune route provoque une erreur par défaut. Une page 404 informe le visiteur que la page demandée n'existe pas. Cette leçon montre comment l'ajouter avec un middleware placé à la fin des routes.

Comprendre le parcours des routes

Express traite la requête de haut en bas. Si une route répond et n'appelle pas la suite, la requête s'arrête à cet endroit. Si aucune route ne répond, la requête arrive jusqu'en bas du fichier.

Ajouter le middleware 404

Un middleware placé en dernier gère les requêtes restantes, quelle que soit la méthode HTTP. Il envoie un message de page introuvable.

Le code d'état 404, qui signifie page introuvable, se définit avec status. Cette méthode s'enchaîne avant send, qui doit rester le dernier appel.

app.use((req, res) => {
  res.status(404).send("<h1>Page introuvable</h1>");
});

Vérifier le résultat

Après redémarrage, une adresse inconnue affiche la page introuvable, tandis que les routes existantes continuent de fonctionner.

En résumé

Une page 404 se met en place avec un middleware placé à la fin des routes. La méthode status définit le code 404, et send envoie le contenu. Les routes existantes ne sont pas modifiées.

Points clés

  • Express traite les requêtes de haut en bas.
  • Un middleware placé en dernier reçoit les requêtes restantes.
  • La méthode status définit le code d'état de la réponse.
  • Le code 404 signifie que la page est introuvable.
  • La méthode send doit être le dernier appel de la chaîne.

Questions fréquentes

Pourquoi placer le middleware à la fin ?

Il ne doit traiter que les requêtes qu'aucune route n'a prises en charge.

Que fait status(404) ?

Il définit le code d'état de la réponse à 404, le code courant pour une page introuvable.

Faut-il indiquer un chemin dans use ?

Non. Sans chemin, le middleware répond à toutes les adresses, ce qui est la valeur par défaut.