我有一个快速的NodeJS服务器。我想上传非常大的文件(超过10 of的大小)。为此,我尝试了multer
和formidable
模块。
我的问题是我不能在服务器中接收超过1 1Gb的数据。在浏览器中,我得到了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");
}
});
你知道发生了什么事吗?
发布于 2016-01-12 05:00:36
不需要使用multer。尝试使用此代码。
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');
});
});
https://stackoverflow.com/questions/34672568
复制相似问题