Maison > interface Web > js tutoriel > Comment accéder aux champs du formulaire POST dans Express.js ?

Comment accéder aux champs du formulaire POST dans Express.js ?

DDD
Libérer: 2024-12-10 05:17:09
original
205 Les gens l'ont consulté

How Do I Access POST Form Fields in Express.js?

Accès aux champs du formulaire POST dans Express : un guide

Lorsque vous travaillez avec des formulaires, accéder aux champs du formulaire POST dans Express peut être un processus simple. Cependant, des changements subtils dans les versions Express ont introduit quelques variations dans l'approche.

Express 4.16.0 et versions ultérieures

À partir d'Express 4.16.0, l'accès aux champs du formulaire POST a été simplifié avec l'introduction de express.json() et express.urlencoded. Ces fonctions middleware analysent respectivement les corps codés JSON et URL.

Pour utiliser cette approche, installez express :

$ npm install express
Copier après la connexion

et incluez le middleware suivant dans votre application Express :

app.use(express.json());       // to support JSON-encoded bodies
app.use(express.urlencoded()); // to support URL-encoded bodies
Copier après la connexion

Une fois ces middleware en place, vous pouvez accéder aux champs du formulaire POST en utilisant le req.body object :

// assuming POST: name=foo&amp;color=red            <-- URL encoding
//
// or       POST: {&quot;name&quot;:&quot;foo&quot;,&quot;color&quot;:&quot;red&quot;}  <-- JSON encoding

app.post('/test-page', function(req, res) {
    var name = req.body.name,
        color = req.body.color;
    // ...
});
Copier après la connexion

Express 4.0 à 4.15

Avant Express 4.16.0, la gestion des champs de formulaire POST impliquait l'installation du package body-parser et l'utilisation de son middleware.

$ npm install --save body-parser
Copier après la connexion

Dans votre candidature Express, incluez les lignes suivantes :

var bodyParser = require('body-parser')
app.use( bodyParser.json() );       // to support JSON-encoded bodies
app.use(bodyParser.urlencoded({     // to support URL-encoded bodies
  extended: true
})); 
Copier après la connexion

Avec ceci configuration, l'accès aux champs du formulaire POST est similaire à l'approche dans Express 4.16.0 :

app.post('/test-page', function(req, res) {
    var name = req.body.name,
        color = req.body.color;
    // ...
});
Copier après la connexion

Remarque : L'utilisation de express.bodyParser() n'est pas recommandée et équivaut à l'utilisation combinée de express.json (), express.urlencoded() et express.multipart(). Évitez express.bodyParser() sauf si vous avez spécifiquement besoin d'une prise en charge du codage en plusieurs parties, ce qui pose des problèmes de sécurité. Pour le codage en plusieurs parties, reportez-vous à la documentation Express.

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:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal