Heim Web-Frontend Front-End-Fragen und Antworten So verarbeiten Sie POST-Anfragen und erhalten Anforderungsparameter in Node.js

So verarbeiten Sie POST-Anfragen und erhalten Anforderungsparameter in Node.js

Apr 07, 2023 am 09:28 AM

Mit der kontinuierlichen Weiterentwicklung von Webanwendungen haben Benutzer immer mehr Anforderungen an die Dateninteraktion. Unter ihnen ist die Verwendung von POST-Anfragen offensichtlicher geworden. Bei der Bearbeitung von POST-Anfragen in Node.js müssen wir normalerweise die vom Client gesendeten Daten abrufen und analysieren. In diesem Artikel erfahren Sie, wie Sie POST-Anfragen verarbeiten und Anforderungsparameter in Node.js abrufen.

POST-Anfragen empfangen

In Node.js können wir das http-Modul verwenden, um einen Webserver zu erstellen und auf Anfragen zu warten. Schauen wir uns einen einfachen Code an:

const http = require('http');

http.createServer(function(request, response) {

    // 处理请求

}).listen(3000);
Nach dem Login kopieren

In diesem Code haben wir einen Webserver erstellt und Port 3000 abgehört. Immer wenn eine Anfrage gesendet wird, ruft der Server die Funktion auf, die wir mit der Anfrage als Parameter übergeben haben, und generiert ein Antwortobjekt für die Antwort.

Hinweis: Der obige Code verarbeitet keine POST-Anfragen, stellt jedoch ein Grundgerüst zum Abhören und Beantworten von Anfragen bereit, das als Grundlage für den Empfang von POST-Anfragen verwendet werden kann.

POST-Anforderungsparameter abrufen

Wenn der Client eine POST-Anfrage sendet, können wir die Anforderungsparameter auf zwei Arten abrufen:

  1. Ereignisüberwachung

Die Ereignisüberwachungsmethode wird am häufigsten verwendet. Wir können das Datenereignis und das Endereignis des Anforderungsobjekts abhören, um die Parameter der POST-Anforderung zu erhalten.

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);
Nach dem Login kopieren
Nach dem Login kopieren

Im obigen Code ermitteln wir, ob die Anfrage POST ist, und erstellen in diesem Fall eine globale Variable post als Cache. Anschließend werden die POST-Parameter durch Abhören des Datenereignisses des Anforderungsobjekts in binärer Form an die Post-Variable übergeben. Durch Abhören des Endereignisses des Anforderungsobjekts wird schließlich die Post-Variable analysiert und in ein JavaScript-Objekt konvertiert.

Da die POST-Anforderungsdaten sehr groß sein können, ist zu beachten, dass möglicherweise mehrere Datenereignisse erforderlich sind, um die Daten vollständig zu übertragen. Daher müssen wir einen Caching-Mechanismus verwenden, um die übertragenen Daten zu speichern, bis die vollständige Anfrage eingegangen ist, und sie dann an unseren Handler weiterzuleiten.

  1. Querystring-Parsing

Querystring-Modul ist eines der in Node.js integrierten Module zur Verarbeitung von Abfragezeichenfolgen in URLs. Dieses Modul stellt die Methode parse() zum Konvertieren von Abfragezeichenfolgen in JavaScript-Objekte bereit.

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);
Nach dem Login kopieren
Nach dem Login kopieren

In diesem Beispiel haben wir die Parameter der POST-Anfrage mithilfe des Querystring-Moduls geparst und in der Post-Variablen gespeichert.

Zusammenfassung

Die beiden oben genannten Methoden verwenden Event-Listening und Querystring-Parsing, um POST-Anforderungsparameter abzurufen und sie in JavaScript-Objekte umzuwandeln, damit wir sie verarbeiten können.

In tatsächlichen Anwendungen können wir verschiedene Methoden verwenden, um POST-Anforderungsparameter entsprechend den tatsächlichen Anforderungen zu verarbeiten. Wenn Sie große POST-Anforderungsdaten effizient verarbeiten müssen, ist Event Listening möglicherweise die bessere Wahl. Wenn Sie nur einige einfache Formularanfragen verarbeiten müssen, ist der Abfragezeichenfolgencode prägnanter und leichter zu verstehen.

Nach Erhalt der POST-Anfrage müssen wir die Anfrageparameter sorgfältig prüfen und bearbeiten, um Sicherheitsprobleme zu vermeiden.

Das obige ist der detaillierte Inhalt vonSo verarbeiten Sie POST-Anfragen und erhalten Anforderungsparameter in Node.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was ist Useffizität? Wie verwenden Sie es, um Nebenwirkungen auszuführen? Was ist Useffizität? Wie verwenden Sie es, um Nebenwirkungen auszuführen? Mar 19, 2025 pm 03:58 PM

Was ist Useffizität? Wie verwenden Sie es, um Nebenwirkungen auszuführen?

Erklären Sie das Konzept des faulen Ladens. Erklären Sie das Konzept des faulen Ladens. Mar 13, 2025 pm 07:47 PM

Erklären Sie das Konzept des faulen Ladens.

Wie funktioniert das Currying in JavaScript und wie hoch sind ihre Vorteile? Wie funktioniert das Currying in JavaScript und wie hoch sind ihre Vorteile? Mar 18, 2025 pm 01:45 PM

Wie funktioniert das Currying in JavaScript und wie hoch sind ihre Vorteile?

Was sind Funktionen höherer Ordnung in JavaScript und wie können sie verwendet werden, um prägnanter und wiederverwendbarer Code zu schreiben? Was sind Funktionen höherer Ordnung in JavaScript und wie können sie verwendet werden, um prägnanter und wiederverwendbarer Code zu schreiben? Mar 18, 2025 pm 01:44 PM

Was sind Funktionen höherer Ordnung in JavaScript und wie können sie verwendet werden, um prägnanter und wiederverwendbarer Code zu schreiben?

Wie funktioniert der React -Versöhnungsalgorithmus? Wie funktioniert der React -Versöhnungsalgorithmus? Mar 18, 2025 pm 01:58 PM

Wie funktioniert der React -Versöhnungsalgorithmus?

Wie verhindern Sie das Standardverhalten bei Ereignishandlern? Wie verhindern Sie das Standardverhalten bei Ereignishandlern? Mar 19, 2025 pm 04:10 PM

Wie verhindern Sie das Standardverhalten bei Ereignishandlern?

Was ist usecontext? Wie verwenden Sie es, um den Zustand zwischen Komponenten zu teilen? Was ist usecontext? Wie verwenden Sie es, um den Zustand zwischen Komponenten zu teilen? Mar 19, 2025 pm 03:59 PM

Was ist usecontext? Wie verwenden Sie es, um den Zustand zwischen Komponenten zu teilen?

Was sind die Vor- und Nachteile kontrollierter und unkontrollierter Komponenten? Was sind die Vor- und Nachteile kontrollierter und unkontrollierter Komponenten? Mar 19, 2025 pm 04:16 PM

Was sind die Vor- und Nachteile kontrollierter und unkontrollierter Komponenten?

See all articles