我开发了具有自定义Express后端的 next.js应用。 为了使用passport.js身份验证,必须通过Express路由到不同的页面。 为了强行进行路由,使用next似乎无效。
我尝试使用带有“ as”参数的自定义路由,但这似乎不起作用。
为了加载页面的快速端点示例。
server.get("/products/overview", checkAuthenticated, (req, res) => {
console.log("I routed");
return app.render(req, res, "/products/overview", req.query);
});
如您所见,需要执行 checkAuthenticated 来保护路由免受未经身份验证的用户的侵害。
不幸的是,当从“下一个/链接”中使用时->路由无法通过Express进行,因为还允许未经身份验证的会话,并且未记录“我已路由”。
编辑:重要的是要注意,如果使用<a>
,一切正常。不幸的是,这意味着预取等将停止工作。