Node.js需要回调函数但得到一个[object Object]

时间:2016-01-05 02:26:31

标签: javascript node.js express multer

我尝试使用node.js上传。

router.post('/image', [ multer(), function(req, res) {
  var file = req.files.file;
  console.log(file);
  res.end();
}]);

上述代码有什么问题?我收到

的错误
Error: Route.post() requires callback functions but got a [object Object]
    at Route.(anonymous function) [as post] 

2 个答案:

答案 0 :(得分:3)

您很可能会关注使用multer旧版API的较旧教程。 API已更改~v1.0.0,您可以找到新API here的示例。例如:

 var upload = multer();
 router.post('/image', [ upload.any(), function(req, res) {
   var file = req.files.file;
   console.log(file);
   res.end();
 }]);

答案 1 :(得分:1)

路由器参数& multer用法。您应该看到{{3}}

这是一个帮助您调整代码的示例。

var multer  = require('multer');
var upload = multer({ dest: 'uploads/' });

router.post('/image', upload.single("image"), function(req, res) {
    var file = req.file;
    console.log(file);
    res.end();
}]);