Affichez vos forces : https://github.com/dupontdenis/Pug-skills.git
Correction DM
https://github.com/dupontdenis/Correction-DM-filesystem.git
Nous verrons ensuite comment en faire une API
https://github.com/dupontdenis/Correction-DM-Core-filesystem
Test : ViteTest un must
Je viens de vous rediger un article sur le test avec vitest !
URL ?
const aString = 'https://www.hostinger.com/tutorials/wp-content/uploads/sites/2/2021/08/how-to-make-a-website-1.png'
__dirname ??
__dirname n'est pas reconnu lorsque l'on passe en version de module EJS.
Voici deux solutions possibles : solutions
🆘Différence entre URL et File path !
Voici trois écritures du chemin d'accès à un même fichier :
// URL
const fileURL = 'file:///C:/Users/username/Documents/fichier.json';
// Equivalent file path
const filePath = 'C:\\Users\\username\\Documents\\fichier.json';
// Equivalent file path in Git Bash
const filePath = '/c/Users/username/Documents/fichier.json';
// Equivalent file path
Notez que dans les chemins de fichiers Windows, les barres obliques inverses (\) sont utilisées comme séparateurs, mais dans les chaînes JavaScript, les barres obliques inverses sont des caractères d'échappement, et doivent donc être échappées elles-mêmes avec une autre barre oblique inversée.
🚀En action :
Un chemin d'accès est une chaîne de caractères qui spécifie l'emplacement d'un fichier dans un système de fichiers. Il peut être absolu ou relatif. Voici un exemple de lecture d'un fichier à l'aide d'un chemin d'accès dans Node.js :
const fs = require('fs');
const path = require('path');
// Absolute file path
const absoluteFilePath = path.join(__dirname, '2024-03-18-feed.json');
fs.readFile(absoluteFilePath, 'utf8', (err, data) => {
if (err) {
console.error(err);
return;
}
console.log(data);
});
Une URL (Uniform Resource Locator) est une référence à une ressource web qui spécifie son emplacement sur un réseau informatique et un mécanisme pour la récupérer.
🥷Dans Node.js, vous pouvez également utiliser les URL pour les chemins d'accès aux fichiers, ce qui est particulièrement utile pour les projets de développement.
import { readFile } from 'fs/promises';
import { fileURLToPath } from 'url';
import { dirname } from 'path';
// URL for the current module
const currentModuleURL = new URL(import.meta.url);
// Convert the URL to a file path
const currentModulePath = dirname(fileURLToPath(currentModuleURL));
// Use the file path to read a file
const data = await readFile(`${currentModulePath}/2024-03-14-feed.json`, 'utf8');
console.log(data);
Dans ce deuxième exemple, import.meta.url fournit une URL pour le module en cours. Cette URL est ensuite convertie en chemin de fichier à l'aide de fileURLToPath, et le chemin de fichier est utilisé pour lire un fichier.
La principale différence entre les deux est que les chemins d'accès aux fichiers sont spécifiques au système de fichiers et sont utilisés pour lire/écrire des fichiers, tandis que les URL sont plus généraux et peuvent être utilisés pour localiser des ressources sur Internet ou sur un réseau local, en plus du système de fichiers local.
Les commandes de base
PowerShell
Introduction : les modules de Node ( https://dupontnodejs.blogspot.com/p/modules.html )
Entrainement à l'examen : Test 🕑minutes
Que vaut output ?