L'environnement d'exécution NodeJS est devenu un choix populaire pour la création d'applications web modernes en raison de son architecture efficace basée sur les événements et de sa fondation JavaScript. Au sein de cet écosystème, Express se distingue comme un framework web de premier plan, offrant une approche de développement robuste et simplifiée.
Présentation d'Apidog, un outil d'API sophistiqué qui fournit aux développeurs un outil de génération de code pour un développement d'applications et d'API plus efficace.
Pour en savoir plus sur ce qu'Apidog a à offrir, cliquez sur le bouton ci-dessous.
L'une des pierres angulaires des API web efficaces réside dans l'utilisation des méthodes HTTP qui dictent la manière dont les ressources sont utilisées. La méthode PUT joue un rôle crucial dans ce contexte, permettant aux développeurs d'effectuer des mises à jour ciblées sur les ressources existantes.
Avant de plonger plus profondément dans la réalisation de requêtes PUT avec NodeJS Express, comprenons pleinement ce que sont NodeJS et Express séparément.
Qu'est-ce que NodeJS ?
NodeJS est un logiciel open-source qui rompt le moule en permettant à JavaScript de s'exécuter en dehors des navigateurs web. Cette flexibilité s'étend à différents systèmes d'exploitation, ce qui en fait un outil polyvalent pour les développeurs. Ce document explore en profondeur ce que NodeJS offre, en explorant ses capacités et comment il a changé notre façon d'aborder le développement logiciel.

Principales fonctionnalités de NodeJS
Architecture basée sur les événements
Contrairement aux serveurs web traditionnels, NodeJS n'utilise pas de threads. Au lieu de cela, il s'appuie sur une boucle d'événements pour gérer efficacement plusieurs requêtes. Cette approche basée sur les événements rend NodeJS idéal pour les applications qui traitent un volume élevé de connexions simultanées, comme les applications de chat ou le streaming de données en temps réel.
JavaScript partout
NodeJS utilise le moteur JavaScript V8, le même qui alimente Google Chrome, pour exécuter le code. Cela permet aux développeurs d'utiliser JavaScript pour le développement front-end et back-end, réduisant ainsi le besoin d'apprendre et de gérer plusieurs langages.
E/S non bloquantes
NodeJS utilise un modèle d'E/S non bloquant. Cela signifie qu'il n'attend pas que les opérations lentes (comme la lecture à partir d'une base de données) se terminent avant de traiter d'autres requêtes. Au lieu de cela, il passe à la requête suivante pendant que l'opération lente se termine en arrière-plan. Cela maintient le serveur réactif et efficace.
Écosystème riche et NPM
NodeJS possède une communauté vaste et active qui contribue à un gestionnaire de paquets massif appelé npm (Node Package Manager). NPM offre une grande variété de modules pré-écrits pour diverses fonctionnalités, ce qui permet aux développeurs de gagner du temps et des efforts en fournissant des composants de code réutilisables.
Évolutivité
Les applications NodeJS peuvent être facilement mises à l'échelle horizontalement. Cela signifie que vous pouvez ajouter davantage de serveurs de travail pour gérer l'augmentation du trafic, ce qui rend NodeJS adapté à la création d'applications volumineuses et complexes.
Qu'est-ce qu'Express ?
Express, également connu sous le nom de ExpressJS, est un framework web populaire pour NodeJS qui permet aux développeurs de créer des applications web et des API avec plus de facilité. Il agit comme une couche d'abstraction, offrant une approche plus pratique et structurée par rapport au travail direct avec les fonctionnalités sous-jacentes de NodeJS. Cela se traduit par une réduction significative du code répétitif (code passe-partout), permettant aux développeurs de se concentrer sur la logique principale de leurs applications et d'accélérer le processus de développement.

Principales fonctionnalités d'ExpressJS
Routage
ExpressJS excelle dans la définition des routes, qui mappent les URL vers des fonctions spécifiques qui gèrent les requêtes entrantes. Cette organisation rend le code de votre application plus lisible et maintenable.
Middleware
Une force essentielle d'ExpressJS est sa fonctionnalité de middleware. Le middleware agit comme des mini-applications qui interceptent les requêtes et les réponses, vous permettant d'effectuer des tâches courantes comme la journalisation, l'authentification ou la diffusion de fichiers statiques avant que la requête n'atteigne sa destination finale.
Moteurs de modèles
ExpressJS s'intègre de manière transparente avec divers moteurs de modèles comme EJS, Pug ou Handlebars. Ces moteurs vous permettent de créer des pages HTML dynamiques en combinant HTML et contenu généré côté serveur.
Gestion des erreurs
ExpressJS fournit une approche structurée de la gestion des erreurs. Vous pouvez définir des gestionnaires d'erreurs personnalisés pour intercepter les erreurs et y répondre avec élégance, améliorant ainsi l'expérience utilisateur globale de votre application.
Communauté et écosystème
ExpressJS bénéficie d'une communauté de développeurs large et active. Cela se traduit par une grande quantité de middleware, de bibliothèques et de ressources facilement disponibles, ce qui permet aux développeurs de gagner du temps et des efforts lors de la création d'applications web.
Comment faire des requêtes PUT NodeJS Express ?
Pour vous assurer que vous pouvez exécuter les requêtes PUT, vous devrez d'abord vous assurer que votre système a NodeJS et NPM installés.
Conditions préalables
Tout d'abord, créez un répertoire de projet et initialisez un projet NodeJS en son sein à l'aide de NPM :
mkdir nodejs-put-request
cd nodejs-put-request
npm init -y
Ensuite, installez le framework ExpressJS en tant que dépendance pour votre projet :
npm install express
Étape 1 - Construction d'une route PUT
Dans votre répertoire de projet, créez un fichier nommé server.js
. Ce fichier contiendra la logique de l'application ExpressJS. L'extrait de code ci-dessous illustre une route PUT de base :
const express = require('express');
const app = express();
const port = 3000;
// In-memory data store (replace with a database for production)
let data = {
id: 1,
name: "John Doe",
age: 30
};
// PUT route for updating data based on ID
app.put('/api/data/:id', (req, res) => {
const id = req.params.id;
const updatedData = req.body;
// Validate data existence before update
if (data.id !== parseInt(id)) {
return res.status(404).send("Data not found");
}
// Update data properties using object spread syntax
data = { ...data, ...updatedData };
res.json(data);
});
app.listen(port, () => {
console.log(`Server listening on port ${port}`);
});
Explication du code
- Nous importons Express et créons une instance d'application Express.
- Un exemple d'objet de données sert d'espace réservé (une base de données serait utilisée en production).
- La route PUT (
/api/data/:id
) capture un paramètre ID à partir de l'URL. - L'existence des données est vérifiée avant de tenter une mise à jour.
- Si les données sont trouvées, les données mises à jour du corps de la requête sont fusionnées avec l'objet de données existant à l'aide de la syntaxe de propagation d'objet (
...
). - Enfin, les données mises à jour sont renvoyées dans la réponse sous forme de JSON.
Étape 2 - Envoi d'une requête PUT (à l'aide d'Apidog)
Pour simuler l'envoi d'une requête PUT, vous pouvez utiliser un outil comme Apidog.

Ce que vous devez faire, c'est :
- Définir la méthode HTTP sur PUT.
- Définir l'URL sur
http://localhost:3000/api/data/1
(remplacez 1 par l'ID souhaité). - Dans l'onglet corps, définissez le type de contenu sur JSON et fournissez les données que vous souhaitez mettre à jour (par exemple, {"name": "Jane Doe"}).
- Envoyer la requête.
La section ci-dessous mettra en évidence davantage ce qu'Apidog a à offrir.
Considérations importantes et meilleures pratiques
Cet exemple sert d'illustration fondamentale pour effectuer des requêtes PUT avec NodeJS Express. N'oubliez pas d'intégrer des fonctionnalités supplémentaires dans vos applications réelles :
- Gestion des erreurs : Mettez en œuvre des mécanismes robustes de gestion des erreurs pour gérer avec élégance les problèmes potentiels pendant le processus de mise à jour.
- Validation : Validez les données entrantes pour vous assurer qu'elles respectent votre schéma et vos contraintes définis.
- Intégration de la base de données : Pour les applications de production, intégrez une solution de base de données comme MongoDB ou PostgreSQL pour le stockage persistant des données.
- Middleware : Explorez les fonctionnalités de middleware dans ExpressJS pour gérer des tâches telles que l'authentification, l'autorisation et la journalisation pour une application plus sécurisée et bien structurée.
Apidog - Effectuer une requête PUT
Comme présenté précédemment, vous pouvez effectuer une requête PUT en un rien de temps avec Apidog, un outil de développement d'API complet qui dispose d'outils complets pour l'ensemble du cycle de vie de l'API.

Tout d'abord, cliquez sur le bouton New Request
pour créer une nouvelle requête pour la requête PUT NodeJS Express.

Ensuite, assurez-vous de transformer la requête en une requête PUT. Dans la zone en surbrillance de l'image, insérez le point de terminaison de l'API auquel vous souhaitez accéder.
Continuez en incluant les détails nécessaires pour votre requête PUT.
Générez du code JavaScript pour votre application avec Apidog
Comme NodeJS et Express sont écrits à l'aide du langage de programmation JavaScript, vous devrez maîtriser ce langage. Heureusement, Apidog dispose d'une fonctionnalité de génération de code.

Tout d'abord, recherchez le bouton </>
situé dans le coin supérieur droit de l'écran. Si vous avez du mal à localiser le bouton, vous pouvez vous référer à l'image ci-dessus.

Continuez en sélectionnant le langage de programmation côté client dont vous avez besoin. Vous avez le pouvoir de choisir la bibliothèque JavaScript avec laquelle vous êtes le plus à l'aise.
Il vous suffit de copier et de coller le code dans votre IDE, et de continuer à le modifier pour vous assurer qu'il correspond à votre application NodeJS ! Cependant, si vous souhaitez utiliser Unirest comme indiqué dans l'image ci-dessus, vous pouvez vous référer à l'article ici :

Conclusion
NodeJS Express permet aux développeurs de construire des API robustes et polyvalentes qui intègrent de manière transparente les requêtes PUT pour les mises à jour ciblées des ressources. Ce guide a exploré les concepts de base impliqués dans la gestion des requêtes PUT dans les applications NodeJS Express. Nous avons parcouru l'établissement d'un projet, la création d'une route PUT et la simulation d'une requête à l'aide de Postman.
N'oubliez pas que cela sert de base. Les applications réelles doivent intégrer les meilleures pratiques telles que la gestion des erreurs, la validation des données, l'intégration de la base de données et le middleware pour une approche de développement complète et sécurisée. En maîtrisant les requêtes PUT dans NodeJS Express, vous pouvez gérer et mettre à jour efficacement les ressources dans vos applications web et vos API.