我正在为expressjs应用程序设置路由,当我点击一个端点时,我看到正在执行两条路由。这是我的代码:
app.get("/forgot-password", (req, res) => {
....
});
app.get("/:modelName/:id?", (req, res) => {
....
});
我知道如果第一个不匹配,第二个基本上将捕获所有内容。但我的印象是,一旦一条路线匹配,就没有其他路线可以运行。正确的输出显示在浏览器中,但我看到第二条路线的错误显示在我的控制台中。
除了在第二条路线上添加某种类型的前缀之外,有什么方法可以阻止这种情况吗? (制作/ model /:modelName ...)
答案 0 :(得分:0)
请务必使用req.end
结束您的请求,否则请求对象将被传递到堆栈中的下一个中间件。
或确保调用调用req.end
的方法,例如res.redirect()
或res.send
。