node passport.serializeUser时失败

发布于 2022-09-11 22:38:03 字数 812 浏览 15 评论 0

nodejs里使用passport登录成功后,设置session时sessionID变化了,导致设置无效
PS:环境是windows server 2012 R2,node v12.4.0(在win7和windows server 2008 R2上正常)

    passport.serializeUser(function(user, done) {
        utils.log('passport.local.serializeUser:' + JSON.stringify(user));
        done(null, user.account);
    });

    passport.deserializeUser(function(account, done) {
        utils.log('passport.local.deserializeUser:' + JSON.stringify(account));
        myDb.query(`select * from users where account=?`, [account], function (err, result) {
            if (err) {
                utils.log('[SELECT ERROR] - ' + err.message);
            } else {
                done(null, result[0]);
            }
        });
    });

图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苍白女子 2022-09-18 22:38:03

原因已经找到了,发现前端发起post请求时没有带cookie,在fetch里添加

    credentials: 'include',

这样就可以了,至于其他电脑可以的问题,可能是浏览器自己处理了吧,Chrome70几可以直接正常访问,64还需要添加这个东西

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文