Maison > interface Web > js tutoriel > le corps du texte

Créer un site Web avec Node.js et Express.js

Barbara Streisand
Libérer: 2024-10-20 08:20:03
original
1041 Les gens l'ont consulté

Building a Website with Node.js and Express.js

Cet article divise en profondeur la création de sites Web avec Node.js et Express.js. Express.js est un framework essentiel pour créer des applications Web robustes et évolutives au-dessus de Node.js, et l'accent aujourd'hui sera mis sur le routage, le middleware et les moteurs de modèles, et des sessions de cookies.

Points forts du concept :

  1. app.use(rappel)
  2. app.use(chemin, rappel)
  3. OBTENIR, PUBLIER, METTRE, SUPPRIMER
  4. Middleware express
  5. Appelez le prochain middleware de la pile
  6. Utilisation du routeur express
  7. Middleware de gestion de sessions de cookies
  8. Variables du modèle
  9. EJS

1. app.use(rappel)

La méthode app.use(callback) dans Express.js est utilisée pour monter des fonctions middleware. Ce middleware s'exécutera pour chaque requête adressée à votre application, quelle que soit la méthode HTTP ou l'URL.

par exemple) Dans cet exemple, le middleware s'exécute pour chaque demande entrante et enregistre un message sur la console.

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

app.use((req, res, next) => {
  console.log('Middleware running for every request.');
  next();
});
Copier après la connexion
Copier après la connexion

2. app.use(chemin, rappel)

Cette méthode vous permet de monter un middleware sur un itinéraire spécifique. Le middleware ne s'exécutera que si la requête correspond au chemin spécifié.

par exemple) Dans cet exemple, le middleware ne sera déclenché que pour les routes commençant par /users.

app.use('/users', (req, res, next) => {
  console.log('Middleware only for /users route.');
  next();
});
Copier après la connexion
Copier après la connexion

3. OBTENIR, PUBLIER, METTRE, SUPPRIMER

Ces méthodes vous permettent de gérer des méthodes HTTP spécifiques (GET, POST, PUT, DELETE, etc.) sur une route spécifique. C'est ici que vous définissez le comportement de votre application Web.

par exemple) Chaque méthode gère une partie différente des opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) pour la gestion des utilisateurs.

app.get('/users', (req, ress) => {
  res.send('Fetching all users');
});

app.post('/users', (req, res) => {
  res.send('Creating a new user');
});

app.put('/users/:id', (req, res) => {
  res.send(`Updating user with ID: ${req.params.id}`);
});

app.delete('/users/:id', (req, res) => {
  res.send('Deleting user with ID: ${req.params.id}`);
});
Copier après la connexion
Copier après la connexion

4. Intergiciel express

Les fonctions middleware d'Express.js ont accès aux objets de requête (req) et de réponse (res), et elles peuvent exécuter du code, apporter des modifications ou mettre fin au cycle requête-réponse.

Principales caractéristiques :

  • Exécuter le code : vous pouvez effectuer n'importe quelle logique ou opération.
  • Modifier la demande/réponse : le middleware peut mettre à jour les en-têtes, ajouter des données à la demande ou modifier l'objet res.
  • Fin du cycle requête-réponse : le middleware peut renvoyer des données au client et mettre fin au cycle.

par exemple) Dans cet exemple, le middleware ajoute des données personnalisées à l'objet de requête et le gestionnaire de route y accède.

app.use((req, res, next) => {
  req.customData = 'Some custom data';
  next();
});

app.get('/', (req, res) => {
  res.send(`Data from middleware: ${req.customData}`);
});
Copier après la connexion
Copier après la connexion

5. Appeler le prochain middleware

Dans l'exemple ci-dessus, j'utilise next() pour passer le contrôle au prochain middleware ou gestionnaire de route. Sans appeler next(), la requête se bloquerait car le cycle n'avancerait pas.

par exemple) Cela garantit que chaque élément de middleware peut passer le contrôle au suivant dans la chaîne.

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

app.use((req, res, next) => {
  console.log('Middleware running for every request.');
  next();
});
Copier après la connexion
Copier après la connexion

6. Utilisation du routeur express

Express Router est un excellent outil pour organiser des itinéraires dans des applications modulaires. Il vous aide à diviser vos itinéraires en morceaux plus petits et gérables.

par exemple) Dans cet exemple, le routeur est monté sur /users, et les requêtes adressées à /users/profile seront traitées par la route du routeur.

app.use('/users', (req, res, next) => {
  console.log('Middleware only for /users route.');
  next();
});
Copier après la connexion
Copier après la connexion

7. Middleware de gestion des sessions de cookies

La gestion des sessions et des cookies est cruciale pour gérer l'authentification et l'état des utilisateurs. Express.js fournit un middleware pour gérer les données de session.

par exemple) À l'aide d'une session express, j'initialise une session et définit les données de session, accessibles tout au long de la session de l'utilisateur.

app.get('/users', (req, ress) => {
  res.send('Fetching all users');
});

app.post('/users', (req, res) => {
  res.send('Creating a new user');
});

app.put('/users/:id', (req, res) => {
  res.send(`Updating user with ID: ${req.params.id}`);
});

app.delete('/users/:id', (req, res) => {
  res.send('Deleting user with ID: ${req.params.id}`);
});
Copier après la connexion
Copier après la connexion

8. Variables du modèle

Lors du rendu des vues à l'aide de moteurs de modèles, vous pouvez transmettre des variables pour générer dynamiquement du contenu. Par exemple, dans EJS, vous pouvez transmettre des variables à vos vues pour le rendu.

par exemple) Dans cet exemple, je passe les variables de titre et de message au modèle EJS.

app.use((req, res, next) => {
  req.customData = 'Some custom data';
  next();
});

app.get('/', (req, res) => {
  res.send(`Data from middleware: ${req.customData}`);
});
Copier après la connexion
Copier après la connexion

9. EJS (JavaScript intégré)

EJS est un moteur de création de modèles populaire qui vous permet d'écrire du HTML et d'intégrer du JavaScript directement dans la structure HTML. C'est simple mais puissant et s'intègre bien à Express.js pour les pages Web dynamiques.

par exemple) Le <%= %> La syntaxe est utilisée pour injecter des expressions JavaScript dans le HTML.

app.use((req, res, next) => {
  console.log('First middleware');
  next();
});

app.use((req, res, next) => {
  console.log('Second middlware');
});
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal