Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung der Middleware bodyParser_node.js von Express

Detaillierte Erläuterung der Middleware bodyParser_node.js von Express

WBOY
WBOYOriginal
2016-05-16 16:29:071757Durchsuche

bodyParser wird zum Parsen des Inhalts im vom Client angeforderten Textkörper verwendet und verwendet intern die JSON-Codierungsverarbeitung, die URL-Codierungsverarbeitung und die Datei-Upload-Verarbeitung.

Das Folgende ist ein Beispiel für das Hochladen einer Datei.

Erstellen Sie eine 1.html-Seite

Code kopieren Der Code lautet wie folgt:





Dateien auf den Server hochladen
                                                                    Funktion uploadFile(){
            var formData=new FormData();
            var files=document.getElementById("files").files;
            var file=files[0];
             formData.append("myfile",file);
            var xhr=new XMLHttpRequest();
               xhr.open("post","index.html",true);
                 xhr.onload= Funktion (e) {
If(this.status==200)
document.getElementById("result").innerHTML=this.response;
              };
                 xhr.send(formData);
         }



Bitte wählen Sie eine Datei aus:





Das obige XMLHttpRequest-Objekt und das FormData-Objekt sind Inhalte von HTML5 und werden nicht im Detail erläutert. Diese beiden Objekte können zum Hochladen der vom Benutzer ausgewählten Dateien auf den Server verwendet werden.
Nach der Verwendung der Middleware app.use(express.bodyParser()) auf der Serverseite verfügt die vom Client angeforderte http.IncomingMessage, d. h. das res-Objekt, über ein Dateiattribut.

server.js-Code:

Code kopieren Der Code lautet wie folgt:
var express=require("express");
var fs=require("fs");
var app=express();
app.use(express.bodyParser());
app.get("/index.html", Funktion (req,res) {
res.sendfile(__dirname "/1.html");
});
app.post("/index.html", Funktion (req,res) {
var file=req.files.myfile;
fs.readFile(file.path, function (err,data) {
             if(err) res.send("Dateilesevorgang fehlgeschlagen");
         sonst{
                          fs.writeFile(file.name,data, function (err) {
If(err) res.send("Dateischreibvorgang fehlgeschlagen.");
                     else res.send("Datei erfolgreich hochgeladen");
              })
         }
});
});


app.listen(1337,"127.0.0.1", function () {
console.log("Überwachung starten");
});

Nachdem Sie den Server gestartet haben, führen Sie den Browser aus:

Datei auswählen:

Die Meldung „Upload erfolgreich“ erscheint im Browser,

Die von uns hochgeladenen Dateien sind auch serverseitig verfügbar.

Nach dem Klicken auf Hochladen:

Darüber hinaus kann bodyParse vom Client-Ajax übermittelte JSON-Daten akzeptieren und URLs verarbeiten.

Stellungnahme:
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