我是 Express 和 Mongoose 的新手。我目前正在开发我的第一个项目,这不是教程,我遇到了问题。
我有多个路由,它们在 index.js 中定义如下:
app.use('/api/client',require('./routes/client'));
app.use('/api/host',require('./routes/host'));
在路由中,有多个动词可以使用,例如 PUT 和 POST。
这是有问题的路线(我试图做更多这里介绍的事情,但是这里介绍的方法也不起作用):
router.get('/ama/:id', function (req, res, next) {
Ama.findById(req.params.id).then(function(Ama){
res.send(Ama);
});
});
这应该有效,对吧?它应该返回数据库中具有该 ID 的文档。我已经检查过该文档是否存在,大概检查了 100 次。
现在,如果我大大简化路线,删除 id,并做出简单的响应,路线就可以工作:
router.get('/ama', function (req, res, next) {
res.send({type:"GET"});
});
这太奇怪了,一旦我添加参数,我就会得到一个:
<pre>Cannot GET /api/host/ama</pre>
在邮递员中。
有任何想法吗? Mongod 正在运行,我的其他路线正在运行。