加载静态文件夹,Express和Angular时的MIME错误

时间:2018-09-05 11:59:36

标签: node.js angular express

我正在尝试通过一些身份验证(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");
}

0 个答案:

没有答案