我有一个如下代码
app.get('/all', callback2);
app.get('/:id', callback);
/:id
覆盖了路线/all
。
答案 0 :(得分:2)
除了避免使用可能不明确的路线之外,我能想到的唯一解决方案是实现这样的一条路线:
app.get('/:id', function(req, res) {
if (req.params.id === 'all') {
// do what you would do for /all
} else {
// do what you do for /:id
}
}
答案 1 :(得分:0)
解决问题的一种好方法,尽管最好的方法不是定义
app.get('/all', callback2);
之前
app.get('/:id', callback);
现在路由器将先检查第一个路由,然后再检查其他路由