我想在输入 url 时检查我的 web 应用程序用户的授权。但是当我使用单独的中间件来检查授权时,它对于已经存在的路由是没有用的,例如:
function authChecker(req, res, next) {
if (req.session.auth) {
next();
} else {
res.redirect("/auth");
}
}
app.use(authChecker);
app.get("/", routes.index);
app.get("/foo/bar", routes.foobar);
authChecker无法检查输入这两个 url 的用户的权限。它仅适用于未指定的网址。
我看到了一种方法,我可以将authChecker放在路由和路由处理程序之间,例如:
app.get("/", authChecker, routes.index);
但是我怎样才能以一种简单的方式实现它,而不是把 authChecker 放在每条路线上呢?