0

我的项目中有以下路线

router.get('/new', async function(req,res){
});

router.get('/:id', async function (req, res) {
});

当我从邮递员调用/new路由时,两条路由都在执行。首先路由/new被执行,然后路由/:id也被调用。我不知道为什么它会感到困惑并触发两条路线。请帮忙。提前致谢。

4

1 回答 1

0

这是因为两个端点的路由结构相同。当你定义一个路由/:id时,它接受路由X中的一些值。现在,当您将 other 定义为 时/new, express 也会将其视为该路由new的值X并调用该路由。解决方法是更改​​其中一个路由的结构。您应该遵循休息模式以避免此类问题。你可以在这里阅读

希望这可以帮助 :)

于 2019-12-11T12:34:41.267 回答