Node.js 需要回调函数但得到了 [object 对象]

Node.js requires callback functions but got a [object Object]

我正在尝试使用 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] 

很可能您正在学习使用 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();
 }]);

路由器参数和多路使用有问题。你应该看到 multer documentation

这里有一个例子可以帮助你适应你的代码。

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();
}]);