OUJOOD.COM
Introduction
Node.js est une plateforme puissante pour créer des applications web. Parmi ses modules natifs, le module URL permet de manipuler facilement les adresses web. Ce tutoriel vous guidera pas à pas pour comprendre et utiliser ce module. Nous verrons également comment créer un serveur qui sert des fichiers HTML et gère les erreurs 404.
Étape 1 : Inclure le module URL
Pour commencer, vous devez inclure le module URL dans votre projet Node.js. Voici comment faire :
const url = require('url');
Le module est maintenant prêt à être utilisé pour analyser et manipuler des URL.
Étape 2 : Utiliser url.parse() pour analyser une URL
La méthode url.parse() permet de décomposer une URL en ses différentes parties. Voici un exemple :
const url = require('url');
const myURL = 'https://www.example.com/path/page?name=John&age=30#section2';
const parsedURL = url.parse(myURL, true);
console.log(parsedURL);
Le résultat retourné sera un objet contenant des propriétés comme protocol, host, pathname, et query.
Comme le montre la capture d'écran suivante
Étape 3 : Créer un serveur qui sert des fichiers HTML
Nous allons créer un serveur Node.js qui répond à des requêtes en servant des fichiers HTML. Voici le code :
const http = require('http');
const url = require('url');
const fs = require('fs');
http.createServer((req, res) => {
const parsedURL = url.parse(req.url, true);
const path = parsedURL.pathname === '/' ? '/index.html' : parsedURL.pathname;
fs.readFile(`.${path}`, (err, data) => {
if (err) {
res.writeHead(404, { 'Content-Type': 'text/html' });
res.end('<h1>404 - Fichier non trouvé</h1>');
} else {
res.writeHead(200, { 'Content-Type': 'text/html' });
res.end(data);
}
});
}).listen(3000, () => {
console.log('Serveur en écoute sur le port 3000');
});
Étape 4 : Les fichiers HTML
Les fichiers index.html, summer.html, et winter.html sont des exemples de contenu que le serveur peut servir. Placez-les dans le même dossier que votre fichier serveur. Voici leur code :
1. Fichier index.html
Ce fichier est la page d'accueil par défaut :
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Page d'accueil</title>
</head>
<body>
<h1>Bienvenue sur notre serveur Node.js</h1>
<p>Essayez de visiter <a href="/summer.html">été</a> ou <a href="/winter.html">hiver</a>.</p>
</body>
</html>
2. Fichier summer.html
Ce fichier représente une page sur l'été :
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Été</title>
</head>
<body>
<h1>Bienvenue en été !</h1>
<p>Profitez du soleil et des plages.</p>
<a href="/">Retour à l'accueil</a>
</body>
</html>
3. Fichier winter.html
Ce fichier représente une page sur l'hiver :
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Hiver</title>
</head>
<body>
<h1>Bienvenue en hiver !</h1>
<p>Admirez les paysages enneigés et profitez des fêtes.</p>
<a href="/">Retour à l'accueil</a>
</body>
</html>
Conclusion
Vous avez appris à utiliser le module URL de Node.js, à créer un serveur pour servir des fichiers HTML, et à gérer des erreurs 404. Avec cette base, vous pouvez développer des applications Node.js plus complexes.