我正在尝试通过一些身份验证(passwordjs)来建立一个有角度的页面,而我正在努力地做到这一点。
最终结果应该是:进入URL,网址为mypage.com,然后重定向到/ login,后者处理身份验证,然后重定向到/ home,然后将其加载到所有角度文件所在的静态文件夹中。
这里的问题是,在身份验证完成之前,我不想加载任何文件夹。当前执行此操作时有效,但是第一次将我重定向到/ home并出现错误 ” 拒绝从''执行脚本,因为它的MIME类型('text / html')无法执行,并且启用了严格的MIME类型检查。“。但是,一旦我重新加载页面,它就会起作用。
以前有人遇到过此问题吗?我的猜测是静态文件夹不是第一次加载,并且在重新加载时,身份验证已经完成,因此该文件夹已成功加载。
这是我当前项目路由的样子,(缩减)
app.get(LOGIN_URL,
passport.authenticate(WebAppStrategy.STRATEGY_NAME,
{
successRedirect: LANDING_URL,
failureRedirect: '/login',
}
));
var serve = serveStatic('folder');
var serveIndex = serveStatic('./cafm-serviceportal/dist/cafm-
serviceportal/index.html');
app.use('/home', [function (req, res, next) {
if (isLoggedIn(req)) {
next();
} else {
res.redirect(LOGIN_URL)
}
},
serve,serveIndex
]);
function isLoggedIn(req) {
return req.session[WebAppStrategy.AUTH_CONTEXT];
console.log("IN isLoggedIn");
}