快速会话与passport.js?

Posted

技术标签:

【中文标题】快速会话与passport.js?【英文标题】:express-session vs passport.js? 【发布时间】:2018-07-21 13:50:43 【问题描述】:

我目前正在使用 express-session 为网站实现电子邮件密码登录功能。我到处都看到人们使用 passport.js 来验证请求。下面的代码对我有用。

app.post("/signup", function(req, res) 
    var user = new userModel(req.body);
    user.save();
    req.session.userid = user.id; // I use this id to authenticate

我有任何理由使用护照吗?

【问题讨论】:

你可以阅读这篇文章***.com/questions/43927819/when-to-use-passport-js 【参考方案1】:

在 NodeJS 中,您可以通过 2 种方式进行身份验证:

    基于会话的身份验证

    基于令牌的身份验证

Passport 是一个基于令牌的身份验证系统。它使用 JSON Web 令牌,即 jwt。

在您的情况下,由于您使用的是基于会话的身份验证,因此您不需要使用护照

【讨论】:

为什么人们同时使用基于会话的(cookie-session 或 express-session)和基于令牌的(passport.js)? @vaibhavS 您可以查看链接.. medium.com/@sherryhsu/… 希望您能得到答案。

以上是关于快速会话与passport.js?的主要内容,如果未能解决你的问题,请参考以下文章

Nodejs + Passport.js + Redis:如何在 Redis 中存储会话

使用 Android 登录时未设置 Passport.js 会话

Passport.js 策略在不使用会话时失败

passport.js deserializeUser 如何解密散列的会话数据?

passport.js req.user 正在返回:'Promise false ' - 如何获取当前会话的用户名?

没有会话的 Passport js 身份验证