expression和上传文件
我试图使用快速和强大的(最终转发到MongoDB和GridFS)上传文件。 我开始创build一个types为文件的字段的表单。 在该领域的行动,我使用以下路线….
exports.addItem = function(req, res, next){ var form = new formidable.IncomingForm(), files = [], fields = []; form .on('file', function(field, file) { console.log(field, file); }) .on('end', function() { console.log('-> upload done'); }); }
一切运行良好,但是当我发布我没有看到任何东西在控制台,它挂起。
路线如下所示…
app.post('/item/add', routes.addItem, routes.getPlaylist, routes.index)
有任何想法吗?
UPDATE
这里是抓取文件的例子,但是,这仍然不包括强大的…
https://gist.github.com/2963261
挂起的原因是因为你需要调用next()来告诉Express继续。
还可以使用express(默认包含)中的bodyParser()中间件来获取文件。 像这样的东西:
exports.addItem = function(req, res, next){ if(req.files.length > 0) { // process upload console.log(req.files); } next(); }