2016-09-23 3 views
0
<form id="test-form" action="/upload" method="POST"> 
    <input type="file" id="wizard-picture" name="picture"> 
    <input name="first_name" type="text" class="form-control" placeholder="First Name"> 
</form> 

app.post("/upload", function(req, res){ 
    console.log(req.body); 
}); 

Hochladen Bild unter Beibehaltung andere Formulardaten


ich meine "first_name" in req.body auftauchen zu tun, aber nicht "Bild". Ich habe den enctype in "multipart/form-data" geändert, und alles ist weg. Ich habe ein leeres Ergebnis. Ich habe einige Pakete wie Multer ausprobiert, ich habe jeden Schritt befolgt, aber es funktioniert immer noch nicht.

Ich möchte sowohl das Bild hochladen und erhalten die Restdaten aus dem Formular.

Antwort

0

Für Datei-Uploads, würde ich vorschlagen, Multer zu verwenden. Siehe hierzu https://github.com/expressjs/multer. Es behandelt Datei-Uploads auf die bestmögliche Weise. Das Bild nur von req.body zu bekommen funktioniert nicht. Beispiele für Multer finden Sie auf ihrem GitHub.

+0

Multer ist eine Middleware. Aber ich möchte in app.post hochladen ("xx", Funktion (req, res) {hier}). Gibt es ein Paket kann dies tun? – Pano

+0

Ja, Multer. Der Aufruf wäre dann app.post ("xx", multer.smth (...), Funktion (req, res) {Zeug}). Die req-Variable enthält dann alle Dateidaten und die Datei wird auf dem Server gespeichert. – NikxDa

Verwandte Themen