2015-07-24 4 views
0

Привет всем Я использую жадеит для создания HTML и иметь такую ​​форму на странице:Проблема загрузки файла (Экспресс/узел, Multer)

 p Upload New Schedule 
     #uploadNew 
     form(id = "form1", action="/upload", method="post", enctype="multipart/form-data") 
      input(type="file", id="control") 
      br 
      input(type="submit" value="Upload" name="Submit") 

когда я выбираю файл и попытаться загрузить, соединение время вышло. Что я делаю не так? Я использую multer промежуточное программное обеспечение, чтобы помочь загрузить, а также:

назад в app.js:

var multer = require('multer'); 
var upload = multer({dest: './uploads'}); 

... 

app.post('/upload', upload.single('Submit'), function(req, res) { 
    if (done == true) { 
     console.log(req.files); 
     res.end("File uploaded"); 
    } 
}); 
+0

Где вы определяете 'done'? Если это не так, ваш пост не попадет в журнал или ответ. – Carasel

ответ

0

Добавить поле имя для ввода типа «файл»:

p Upload New Schedule 
    #uploadNew 
    form(id = "form1", action="/upload", method="post", enctype="multipart/form-data") 
     input(type="file" id="control" name="control") 
     br 
     input(type="submit" value="Upload" name="Submit") 

вам не определили «сделано» нигде, поэтому я просто игнорирую это.
также в upload.single (..) вы должны пройти имени свойства поля ввода «файл» типа (в данном случае это «контроль»)

var multer = require('multer'); 
var upload = multer({dest: './uploads'}); 

... 

app.post('/upload', upload.single('control'), function(req, res) { 

     console.log(req.files); 
     res.end("File uploaded"); 

}); 
0

В дополнение к отвечу gaurav gupta, при использовании функции multer upload.single() для промежуточного программного обеспечения, ваш файл будет находиться в req.file, а не req.files. req.files - для когда вы используете upload.array() или upload.any().

var multer = require('multer'); 
var upload = multer({dest: './uploads'}); 

app.post('/upload', upload.single('control'), function(req, res) { 
    console.log(req.file); 
    res.send("File uploaded"); 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^