强大的上传文件不会触发

时间:2014-10-01 17:31:39

标签: node.js express image-uploading formidable

开发和测试环境:

  • Windows 8 64位
  • 节点版本安装0.10.5
  • npm版本1.2.18
  • 表达框架
  • 用于文件上传的强大模块
  • Firefox和Internet Explorer浏览器

HTML code:

<form id="caricaMasterImg" method="post" enctype="multipart/form-data" action="/image/upload"> 
    <input type="file" id="masterImg" name="masterImg" value="Sfoglia" accept="image/*"/>
    <input type="submit" value="carica" id="submitLoadImg" />
</form>

app.js代码:

var image = require('./route/image');
app.post('/image/upload', image.upload);

routes / image.js代码:

exports.upload = function(req, res){
    var form = new formidable.IncomingForm();
    form.uploadDir =  path.join(__dirname, 'tmp');
    console.log('Upload directory is: '+form.uploadDir);
    fs.exists(form.uploadDir, function (exists) {
        console.log('is an existing directory? '+exists);
    });
    form.parse(req, function(err, fields, files) {
        console.log(fields);
        console.log(files);
    }); 
};

问题:

单击提交按钮时,我希望看到使用console.log(files)指令记录的文件。日志写道:

上传目录是:C:\ Liber-I \ app \ FileSystemManager \ routes \ tmp 是现有目录?真

几分钟内不再在应用程序控制台上写入日志。 我测试了无文件提交的情况,看起来它的行为是一样的!这是一个过于疲劳的行为,成为一个nodejs问题,我在哪里做错了?

1 个答案:

答案 0 :(得分:0)

我认为我确实没有错误。事实是我无法解决这个问题,所以我决定做一个好的工作。我选择使用 connect-multiparty 进行文件上传,它正在运行非常棒