【问题标题】:How does MEAN js handle the Authentication?MEAN js 如何处理身份验证?
【发布时间】:2016-11-15 22:22:26
【问题描述】:

我想知道基本流程。

据我所知,在调用登录 API 时,passport.js 会创建会话并将其存储在 mongo 中。

谁创建会话?谁创建了 cookie?快递还是护照?

我读到,当其他请求到来时,用户对象会使用会话 ID 附加到它上面。谁这样做? Express server 还是 passport.js 还是其他人?

【问题讨论】:

    标签: node.js session express passport.js mean-stack


    【解决方案1】:

    通过使用express-session() 中间件 ExpressJs 创建 cookie 并将会话 ID 存储在用户浏览器中。访问服务器端的cookieconsole.log(req.cookies['connect.sid']);

    express-session 负责创建会话。 Passport 使用 express-session 序列化和反序列化用户对象。当用户对自己进行身份验证时,用户对象会序列化并存储在会话中。在每个请求 passport.deserializeUser 中间件中反序列化用户并填充到 req.user 对象中。

    Click here 获得 ExpressJs 和 PassportJs 的最佳文章。

    【讨论】:

    • 写得很好的答案,除了有关会话和 cookie 的问题之外,还涵盖了序列化和反序列化用户的 +1。
    猜你喜欢
    • 2020-06-11
    • 2015-04-18
    • 2017-06-14
    • 1970-01-01
    • 1970-01-01
    • 2013-08-19
    • 2017-05-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多