Node.js ist ein effizienter serverseitiger JavaScript-Interpreter, der häufig zum Erstellen leistungsstarker, skalierbarer und erweiterbarer Webanwendungen verwendet wird. In Node.js ist das Hochladen von Daten eine der häufigsten Aufgaben, die hauptsächlich durch HTTP-Anfragen und Datei-Uploads erreicht werden.
In diesem Artikel wird erläutert, wie Sie die Methode zum Hochladen von Daten in Node.js implementieren, einschließlich des Hochladens von Dateien und Formulardaten.
1. Node.js-Hochladen von Dateien
In Node.js ist das Hochladen von Dateien über das Multipart-/Formulardatenformular eine gängige Methode. Dieser Ansatz ermöglicht es uns, Dateien unterschiedlicher Art und Größe hochzuladen und serverseitig zu speichern. Das Folgende ist ein einfaches Beispiel für das Hochladen von Dateien:
const http = require('http'); const fs = require('fs'); const formidable = require('formidable'); http.createServer(function (req, res) { if (req.url == '/upload' && req.method.toLowerCase() == 'post') { var form = new formidable.IncomingForm(); form.parse(req, function (err, fields, files) { var oldpath = files.filetoupload.path; var newpath = 'C:/Users/Username/' + files.filetoupload.name; fs.rename(oldpath, newpath, function (err) { if (err) throw err; res.write('File uploaded and moved!'); res.end(); }); }); } else { res.writeHead(200, {'Content-Type': 'text/html'}); res.write('<form action="upload" method="post" enctype="multipart/form-data">'); res.write('<input type="file" name="filetoupload"><br>'); res.write('<input type="submit">'); res.write('</form>'); return res.end(); } }).listen(8080);
Der obige Code verwendet das beeindruckende Modul in Node.js, das uns bei der Verarbeitung hochgeladener Dateien helfen kann. In diesem Code erstellen wir einen Server und hören auf eine Adresse. Beim Hochladen von Dateien rufen wir die IncomingForm()-Methode von formidable auf und analysieren die hochgeladenen Daten über die parse()-Methode.
Nachdem der Upload erfolgreich war, verschieben Sie den temporären Pfad der Datei (oldpath) in den neuen Pfad (newpath) und lösen Sie eine Ausnahme aus, wenn ein Fehler auftritt.
2. Formulardaten mit Node.js hochladen
Wenn Sie in Node.js keine Dateien, sondern nur Formulardaten hochladen müssen, können Sie die folgende Methode verwenden:
const http = require('http'); http.createServer(function (req, res) { if (req.url == '/upload' && req.method.toLowerCase() == 'post') { var body = ''; req.on('data', function (data) { body += data; }); req.on('end', function () { var post = qs.parse(body); console.log(post); res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('ok'); }); } else { res.writeHead(200, {'Content-Type': 'text/html'}); res.write('<form action="upload" method="post">'); res.write('<input type="text" name="name"><br>'); res.write('<input type="text" name="age"><br>'); res.write('<input type="submit">'); res.write('</form>'); return res.end(); } }).listen(8080);
Der obige Code verwendet die gebaute -in Node.js-Modul http und Querystring. In diesem Beispiel erstellen wir einen Server und überwachen eine Adresse, um Anfragen nach Formulardaten zu verarbeiten. Wenn wir die Formulardaten senden, wird die Anforderung an den Server gesendet. Der Server überwacht das Ereignis der Anforderungsdaten über die Methode on () und analysiert die Anforderungsdaten mithilfe des Querystring-Moduls.
In diesem Beispiel analysieren wir einfach die Formulardaten und drucken die Ergebnisse auf der Konsole. In praktischen Anwendungen müssen wir diese Daten möglicherweise in einer Datenbank speichern oder zur Verarbeitung an andere Orte senden.
Zusammenfassung
In diesem Artikel wird hauptsächlich das Hochladen von Daten in Node.js vorgestellt, einschließlich des Hochladens von Dateien und Formulardaten. Beim Hochladen von Dateien müssen Sie das Multipart-/Formulardaten-Formular verwenden, das Hochladen von Formulardaten erfordert jedoch kein Hochladen von Dateien. Sie müssen nur die Formularfeldnamen und Feldwerte in die Anforderungsdaten aufnehmen. Durch das Erlernen dieser Methoden können wir die Notwendigkeit, Daten in Node.js hochzuladen, besser bewältigen.
Das obige ist der detaillierte Inhalt vonSo laden Sie Daten in NodeJS hoch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!