Express.js路由错误路由

Express.js Routing wrong route

我有 3 express.js 条路线

app.get('/packages/:name', (req, res) => {...});
app.get('/packages/search/', (req, res) => {...});
app.get('/packages/search/:name', (req, res) => {...});

第一条和第三条路线运行良好。 但是第二条路线永远不会触发。当我浏览到 "localhost/packages/search/" 时,它将触发带有 res.params.name = "search/"

的第一条路线

我可以做一个 "if" 来检查它是否 "search/" 但我认为这不是一个好的解决方案。

我是不是做错了什么?

express.js中的路由按顺序执行。

详情Node.js 快速路线命名和排序:如何确定优先级?