当您尝试未登录而访问该页面时,我试图制作一个重定向到登录页面的MEAN应用程序。我正在使用MEAN堆栈,并试图显示将要登录的Angular页面。 / p>
我的快递路线如下:
app.use('/app/', helpers.checkLogin);
// Angular app
app.use('/app/', express.static('lib/dist'));
app.use('/app/', (req, res) => {
res.sendFile(path.join(__dirname, '../../dist/index.html'));
});
并且有这样的角度路由设置:
const routes: Routes = [
{ path: 'login', component: LoginComponent }...]
helpers.checkLogin函数如下所示:
export function checkLogin(req: Request, res: Response, next: NextFunction)
{
if (req.originalUrl === '/app/login') {
next();
} else {
if (checkIfLoggedIn()) {
next();
} else {
res.redirect('/app/login');
}
}
}
我的主要问题是它将不断重定向。另外,对我来说,发送带有重定向的401状态码会更好,但是res.redirect不允许400码。
谢谢
编辑1:为清楚起见,我不知道如何使用401状态代码进行重定向,并且我不了解如何设置路由,以便我仍将使用角度组件进行登录,但不进行重定向当我尝试访问此文件但尚未登录时。