2016-01-08 4 views
0

У меня есть сервер Express NodeJS. Я бы хотел загрузить очень большие файлы (размером более 10 ГБ). Для этой цели я пробовал модули multer и formidable.Загрузка HTTP-файла в Express NodeJS-сервере

Моя проблема в том, что я не могу получить больше 1 ГБ на сервере. В браузере я получаю ERR_CONNECTION_RESET. Ошибка кода сервера.

Мой код с formidable:

var formidable = require("formidable"); 
form = new formidable.IncomingForm(); 
form.uploadDir = "./files/"; 
form.parse(req, function(err, fields, files) { 
    console.log("received upload"); 
}); 

Мой код с multer:

var storage = multer.diskStorage({ 
    destination: function (req, file, cb) { 
     cb(null, "./files") 
    } 
}); 

var upload = multer({storage: storage}).array("file",2); 

/** ------ **/ 

upload(req, res, function (err) { 
     if (err) { 
      console.log("error"); 
     } else { //success! 
      console.log("received upload"); 
     } 
}); 

У вас есть какие-либо идеи, что происходит?

ответ

0

Не нужно использовать мультер. попробуйте с этим кодом.

var formidable = require("formidable"); 
    var form = new formidable.IncomingForm(); 

      form.parse(req, function(err, fields, files) { 


      }); 

      form.on('end', function(fields, files, data) { 

       var temp_path = this.openedFiles[0].path; 
       var file_name = openedFiles[0].name; 

       var new_location = 'public/images/'; 

        fs.move(temp_path, new_location + file_name, function(err) { 
         if (err) console.log(err); 
         else 
          console.log('upload-photo success'); 
        }); 
      }); 

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

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