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里就没问题)
这个问题花了我5、6个小时。。。我尝试了各种可能性。
最后TMD居然是这个问题:
so,
<input type="file" name="upload" multiple="multiple">
就可以了。