찾다

 >  Q&A  >  본문

node.js - node-formidable解析问题?

node代码:

var express = require('express')
var app = express();
var formidable = require('formidable');
app.post('/upload', function(req, res) {
    var form = new formidable.IncomingForm();
    form.parse(req, function(err, fields, files) {
        console.log(files);    //打印为空对象
    });
})
app.listen(8888);

前端代码:

<form action="/upload" method="post" enctype="multipart/form-data">
        <input type="file">
        <input type="submit" value="Upload">
    </form>

为什么打印files为空对象?
看了很多例子,几乎试了所有我知道的可能性,不知道哪出错了,求帮助。。。(现在猜测是req对象的问题,不知道是不是因为express框架扩展了req对象,我在原生node里就没问题)

天蓬老师天蓬老师2785일 전589

모든 응답(1)나는 대답할 것이다

  • 迷茫

    迷茫2017-04-17 11:53:45

    这个问题花了我5、6个小时。。。我尝试了各种可能性。
    最后TMD居然是这个问题:

    只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。

    so,<input type="file" name="upload" multiple="multiple">就可以了。

    회신하다
    0
  • 취소회신하다