我正在为我们的nodejs应用程序使用护照模块。在每个页面请求中,deserializeUser会针对每个图像以及CSS和JS文件多次调用。为此,我如下更改了我的代码。在找到以下解决方案之后,我在google中进行了很多搜索
代替:
app.use(passport.session());
使用
app.use(function(req, res, next){
if(req.url.match('/uploads/*') || req.url.match('/images/*')){
next();
}
else
passport.session()(req, res, next)
});
接下来在护照中间件的顶部添加express.static。
app.use(express.static(path.join(__dirname, 'public')));
app.use(passport.initialize());
app.use(function(req, res, next){
if(req.url.match('/uploads/*') || req.url.match('/images/*')){
next();
}
else
passport.session()(req, res, next)
});