gpt4 book ai didi

node.js - req.user 在 Sean.js 中未定义

转载 作者:行者123 更新时间:2023-12-03 22:41:29 25 4
gpt4 key购买 nike

我正在使用 Sean.js 开发一个项目,最近我尝试添加一个中间件来保护我的 api 路由。我使用 server.policy.js 遵循“文章”示例,当我尝试使用 req.user 变量时,它表示未定义。我开始调查这个问题,结果与passport.js有关。我在这方面的工作时间不超过 2 个月,而且我对所有这些都不是很熟悉。

user.server.config.js 是对 session 进行序列化和反序列化的地方:

module.exports = function(app, db) {

// Serialize sessions
passport.serializeUser(function(user, done) {
var userData = {
id: user.id,
firstName: user.firstName,
lastName: user.lastName,
displayName: user.displayName,
username: user.username,
email: user.email,
profileImageURL: user.profileImageURL,
roles: user.roles,
additionalProvidersData: user.additionalProvidersData
};
done(null, userData);
});

// Deserialize sessions
passport.deserializeUser(function(user, done) {
done(null, user);
});

// Initialize strategies
config.utils.getGlobbedPaths(path.join(__dirname, './strategies/**/*.js')).forEach(function(strategy) {
require(path.resolve(strategy))(config);
});

// Add passport's middleware
app.use(passport.initialize());
app.use(passport.session());
};

是这里的问题还是应该修改其他内容?我相信这与此有关,因为它也有问题,当我重新加载 session 时,我必须再次登录。

最佳答案

就像上面的commnet。 Sean.js 使用 Redis 来存储 session ,所以你需要先安装它然后运行它, session 将在 req.user 上可用

关于node.js - req.user 在 Sean.js 中未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43526078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com