Comment utiliser le middleware Body-Parser dans Node.js ?

Comment Utiliser Le Middleware Body Parser Dans Node Js



Lors du traitement des requêtes HTTP POST, la technique de « body parsing » joue un rôle important dans la gestion de leurs corps. Il permet aux utilisateurs d'analyser les corps des requêtes entrantes pour les modifier en fonction des exigences. Cette technique analyse le corps de la requête de chaîne en un objet JavaScript JSON qui peut être utilisé dans l'application Node.js.

Aperçu rapide

Commençons par les bases du middleware dans Node.js.







Qu’est-ce que le middleware dans Node.js ?

Intergiciel est une fonction qui permet de demander un objet, de répondre à un objet et d'exécuter la fonction de manière séquentielle en passant à la fonction middleware suivante dans le cycle demande-réponse de l'application. Il permet également de modifier les objets de requête et de réponse pour effectuer des opérations telles que la vérification, l'analyse des organismes demandeurs et bien plus encore.



Qu’est-ce que le middleware Body-Parser dans Node.js ?

Le ' analyseur de corps » est un middleware d'analyse du corps qui gère les requêtes HTTP POST. La requête « POST » envoie les données à un serveur pour créer ou modifier la ressource. Le middleware « bode-parser » analyse les corps de requête entrants en tant qu'objet JavaScript (si le type de contenu de l'application est JSON) et le formulaire HTML (si le type MIME est application/x-www-form-urlencoded ). Une fois cela fait, cela peut être utilisé dans une application.



Après avoir acquis les bases du middleware body-parser, passons à son utilisation.





Comment utiliser le middleware Body-Parser dans Node.js ?

Pour utiliser le middleware d'analyseur de corps dans Node.js, suivez les étapes d'instructions ci-dessous :

Commençons par l'initialisation du projet Node.js.



Étape 1 : initialiser un projet Node.js

Tout d’abord, initialisez le projet Node.js en exécutant le « ci-dessous » npm (gestionnaire de packages de nœuds) » commande d'initialisation :

initialisation npm - et

Dans la commande ci-dessus, le ' -et' Le drapeau est utilisé pour répondre « oui » à toutes les requêtes.

La sortie montre que le « package.json ' Le fichier est créé avec succès et contient l'ensemble de propriétés suivant :

Étape 2 : Installer l'analyseur de corps

Ensuite, installez le package body-parser dans l’application Node.js actuelle en exécutant le «  npm ' Commande d'installation :

corps d'installation npm - analyseur

Le résultat ci-dessous montre que le package body-parser a été installé avec succès dans l'application Node.js donnée :

Étape 3 : Installer Express et EJS

Maintenant, installez le ' pas (Embedded JavaScript Templating) » dans l’application Node.js. Le « ejs » est le moteur JavaScript réputé utilisé par Node.js qui prend les données HTML au format Javascript simple :

npm installer ejs

On peut observer que la bibliothèque « ejs » a été ajoutée à l'application Node.js actuelle :

De plus, installez le «  exprimer » des frameworks web pour construire l'application Node.js rapidement et facilement :

npm installer express

Le « express » a également été ajouté à l’application Node.js :

Étape 4 : Créer un modèle EJS

Une fois que tous les packages requis ont été installés, créez un modèle « ejs » contenant les lignes de code suivantes et enregistrez-le sous « SampleForm.ejs ' déposer:

DOCTYPEhtml >
< HTML >
< tête >
< titre > Corps - Analyseur Intergiciel titre >
tête >

< corps >
< centre >
< h1 > Exemple de journal h1 >
< action de formulaire = 'enregistrer des données' méthode = 'POSTE' >
< pré >
< étiquette > Titre : étiquette >< type d'entrée = 'texte' nom = 'titre' > < br >
< étiquette > Date étiquette >< type d'entrée = 'date' nom = 'date' >< br >
< étiquette > Date étiquette >< type d'entrée = 'date' nom = 'date' >< br >
< type d'entrée = 'soumettre' valeur = 'Soumettre le journal' >< br >
pré >

formulaire >
centre >
corps >
HTML >

L'explication du code ci-dessus est la suivante :

  • Le ' La balise ' précise le titre du document HTML.
  • Le ' La balise ' aligne le contenu au centre de la page Web.
  • Le '

    La balise ' insère un élément de titre de premier niveau.

  • Le ' La balise ' crée un élément de formulaire qui collecte des informations auprès de l'utilisateur. À l’intérieur de l’élément « formulaire », le « action L'attribut ' spécifie l'action effectuée lors de la soumission du formulaire et l'attribut ' méthode ' L'attribut ayant une valeur 'post' envoie des données au serveur.
  • Le ' La balise ' affiche les éléments spécifiés sur la page avec la largeur de police fixe la même que dans le code source.
  • Le ' <étiquette> La balise ' spécifie l'étiquette du champ de saisie.
  • Le ' ' type ajoute le champ de saisie de type ' texte ' et le nom ' titre ».
  • Les deux balises «   » suivantes ajoutent les champs de saisie des types et noms spécifiés.

Étape 5 : Utiliser le middleware Body Parser

Créez maintenant un fichier « .js » nommé « index.js » et utilisez le middleware body-parser pour analyser le corps de toutes les requêtes entrantes. Lorsque le fichier « .js » est créé, copiez-y les lignes de code suivantes :

const analyseur de corps = exiger ( 'analyseur de corps' )
const exprimer = exiger ( 'exprimer' )
const chemin = exiger ( 'chemin' )
const application = exprimer ( )
laissez PORT = processus. env . port || 8080
application. ensemble ( 'vues' , chemin. rejoindre ( __dirname ) )
application. ensemble ( 'afficher le moteur' , 'Non' )
application. utiliser ( analyseur de corps. codé en URL ( { étendu : vrai } ) )
application. utiliser ( analyseur de corps. json ( ) )
application. obtenir ( '/' , fonction ( demande, résolution ) {
rés. rendre ( 'Exemple de formulaire' )
} ) ;
application. poste ( '/enregistrer des données' , ( demande, résolution ) => {
console. enregistrer ( 'Utilisation de Body-parser : ' , req. corps )
} )
application. écouter ( PORT, fonction ( erreur ) {
si ( erreur ) lancer erreur
console. enregistrer ( 'Serveur créé sur PORT' , PORT )
} )

L'explication des lignes de code indiquées ci-dessus est écrite ci-dessous :

  • Premièrement, le « exiger() ' importe les modules 'body-parser', 'express' et 'path' dans l'application Node.js actuelle.
  • Ensuite, créez une instance de l’application express à l’aide du «  exprimer() » constructeur.
  • Après cela, le « processus.env La propriété ' exécute le serveur local sur la valeur par défaut ' PORT ». Si le port par défaut est occupé, le serveur s'exécutera sur le port spécifié qui est ' 8080 ».
  • Configurez maintenant le moteur d'affichage à l'aide du middleware spécifié dans lequel les « vues » désignent le dossier dans lequel toutes les pages Web sont enregistrées et le « chemin.join() ' La méthode joint les segments de chemin du répertoire actuel et crée un chemin unique.
  • Une fois que tout est fait, le « app.use() ' La méthode met le spécifié ' analyseur de corps ” middleware sur le chemin indiqué. Ce middleware d'analyse corporelle utilise le ' codé en URL » qui analyse uniquement les corps « urlencoded » dont l'en-tête « content-type » correspond à l'option « type ».
  • Le deuxième « analyseur de corps » utilise le « JSON ' analyseur pour analyser les corps des requêtes entrantes en tant qu'objet JSON au format clé-valeur.
  • Le ' app.get() ' La méthode envoie la requête HTTP ' GET ' au chemin spécifié et exécute une fonction de rappel ayant le ' demande (demande) », et « rés (répondre) »paramètres.
  • À l’intérieur de la fonction de rappel, le «  res.render() ' La méthode rend la réponse lorsque la fonction de rappel spécifiée s'exécute.
  • La méthode « app.post() » envoie la requête HTTP « POST » qui est plus sécurisée car elle n'affiche pas les données dans l'URL. Il définit également une fonction de rappel qui utilise le « corps requis » pour obtenir les données des champs de saisie.
  • Enfin, le « app.écouter() ' La méthode crée une connexion sur le port spécifié et définit la fonction de rappel. Dans cette fonction, le «  si ' L'instruction renvoie une erreur si elle se produit pendant l'exécution du programme, et l'instruction ' console.log() ' affiche la déclaration de confirmation sur la console.

Étape 6 : Déployer l’application Node.js

Enfin, déployez l'application Node.js à l'aide du ' nœud » mot-clé de cette manière :



indice de nœud. js

L'exécution de la commande ci-dessus affiche un message de confirmation indiquant que le serveur a été créé avec succès sur le port spécifié :

Visitez maintenant l'URL suivante http://localhost:8080 pour voir l'exemple de journal. Sur la page Web « Exemple de journal », remplissez tous les champs de saisie et cliquez sur le bouton « Soumettre le journal Bouton ' pour enregistrer le contenu :

On peut observer qu'après avoir soumis les informations, le terminal affiche automatiquement tous les corps des éléments HTML utilisés dans le « Sample Diary » en tant qu'objet JSON :

Il s’agit d’utiliser un middleware d’analyseur de corps dans Node.js.

Conclusion

Pour utiliser le « analyseur de corps ' dans Node.js, utilisez le ' codé en URL ' et le ' JSON ' des analyseurs qui analysent le corps de toutes les requêtes entrantes et les affichent sous forme d'objet JSON. Il gère les corps des requêtes « POST » et les analyse pour récupérer le contenu de tous les éléments utilisés dans le document HTML. Il fournit un moyen simple et simple de traiter la date envoyée par le corps de la requête HTTP entrante. Cet article a pratiquement démontré l'utilisation du middleware body-analyseur dans Node.js.