【发布时间】:2017-08-10 17:55:56
【问题描述】:
我正在运行 Node.js 服务器并尝试测试我使用 Express 制作的 Rest API。它使用 Mongoose 链接到 MongoDB。
我正在使用 Postman 测试各个路由,但在尝试向该路由发送 PUT 请求时出现错误:
// PUT /meetings/:id
// Route for editing a specific meeting
router.put("/:id", function(req, res, next) {
req.meeting.update(req.date, function(err, result) {
if(err) return next(err);
res.json(result);
});
});
检索到的错误是这样的:
events.js:141
throw er; // Unhandled 'error' event
^
TypeError: next is not a function
我无法弄清楚这到底是从哪里来的。我正在使用 router.params-method 来指定 :id-parameter 应该如何处理:
router.param("id", function(req, res, id, next) {
Meeting.findById(id, function(err, meeting) {
if (err) return next(err);
if (!meeting) {
err = new Error("Meeting not found");
err.status = 404;
return next(err);
}
req.meeting = meeting;
return next();
});
});
【问题讨论】:
标签: javascript node.js mongodb express mongoose