Maison >interface Web >Questions et réponses frontales >Comment gérer la requête POST et obtenir les paramètres de requête dans Node.js

Comment gérer la requête POST et obtenir les paramètres de requête dans Node.js

PHPz
PHPzoriginal
2023-04-07 09:28:111658parcourir

Avec le développement continu des applications Web, les utilisateurs ont de plus en plus de besoins d'interaction avec les données. Parmi eux, l'utilisation des requêtes POST est devenue plus évidente. Lors du traitement des requêtes POST dans Node.js, nous devons généralement obtenir et analyser les données envoyées par le client. Cet article explique comment gérer les requêtes POST et obtenir les paramètres de requête dans Node.js.

Recevoir des requêtes POST

Dans Node.js, nous pouvons utiliser le module http pour créer un serveur Web et écouter les requêtes. Jetons un coup d'œil à un code simple :

const http = require('http');

http.createServer(function(request, response) {

    // 处理请求

}).listen(3000);

Dans ce code, nous avons créé un serveur Web et écouté le port 3000. Chaque fois qu'une requête est envoyée, le serveur appelle la fonction que nous avons transmise avec la requête en paramètre et génère un objet de réponse pour la réponse.

Remarque : le code ci-dessus ne gérera pas les requêtes POST, mais il fournit un cadre de base pour écouter les requêtes et y répondre, qui peut être utilisé comme base pour recevoir des requêtes POST.

Obtenir les paramètres de la requête POST

Lorsque le client envoie une requête POST, nous pouvons obtenir les paramètres de la requête des deux manières suivantes :

  1. Surveillance des événements

La méthode de surveillance des événements est la plus couramment utilisée. Nous pouvons écouter l'événement de données et l'événement de fin de l'objet de requête pour obtenir les paramètres de la requête POST.

const http = require('http');
const querystring = require('querystring');

http.createServer(function(request, response) {

    if(request.method === 'POST') {

        let post = '';

        request.on('data', function(chunk) {
            post += chunk;
        });

        request.on('end', function() {
            post = querystring.parse(post);
            // 处理post数据
        });

    }

}).listen(3000);

Dans le code ci-dessus, nous déterminons si la requête est POST, et si c'est le cas, créons une variable globale post comme cache. Ensuite, en écoutant l'événement data de l'objet de requête, les paramètres POST sont transmis dans la variable post sous forme binaire. Enfin, en écoutant l'événement de fin de l'objet request, la variable post est analysée et convertie en objet JavaScript.

Il convient de noter que, étant donné que les données de la requête POST peuvent être très volumineuses, plusieurs événements de données peuvent être nécessaires pour transmettre complètement les données. Nous devons donc utiliser un mécanisme de mise en cache pour stocker les données transférées jusqu'à ce que la demande complète soit reçue, puis la transmettre à notre gestionnaire. Le module

  1. querystring analysing

querystring est l'un des modules intégrés de Node.js pour le traitement des chaînes de requête dans les URL. Ce module fournit la méthode parse() pour convertir les chaînes de requête en objets JavaScript.

const http = require('http');
const querystring = require('querystring');

http.createServer(function(request, response) {

    if(request.method === 'POST') {

        let post = '';

        request.on('data', function(chunk) {
            post += chunk;
        });

        request.on('end', function() {
            post = querystring.parse(post);
            // 处理post数据
        });

    }

}).listen(3000);

Dans cet exemple, nous avons analysé les paramètres de la requête POST à ​​l'aide du module querystring et les avons stockés dans la variable post.

Résumé

Les deux méthodes ci-dessus utilisent l'écoute d'événements et l'analyse de chaînes de requête pour obtenir les paramètres de requête POST et les convertir en objets JavaScript que nous pouvons traiter.

Dans les applications réelles, nous pouvons choisir d'utiliser différentes méthodes pour gérer les paramètres de requête POST en fonction des besoins réels. Si vous devez traiter efficacement des données de requêtes POST volumineuses, la méthode d’écoute des événements peut être un meilleur choix. Si vous n’avez besoin de traiter que quelques requêtes de formulaire simples, le code de la chaîne de requête sera plus concis et plus facile à comprendre.

Après avoir reçu la requête POST, nous devons vérifier et gérer soigneusement les paramètres de la requête afin d'éviter tout problème de sécurité.

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!

Déclaration:
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