【发布时间】:2015-02-19 16:41:51
【问题描述】:
我正在为我的应用程序使用 Express JS 和 Passport JS。
我想让新用户有机会通过特定 URL 自动登录一次。我可以使用来自 URL 的信息从数据库中获取用户,所以我有一个用户对象(带有 id、电子邮件、哈希密码等),但我不知道如何使用护照来验证用户和登录。
我尝试使用从数据库中获取的用户对象执行以下函数:
req.login(user, function(err) {
if (err) { return next(err); }
return res.redirect('/users/' + req.user.username);
});
来源:http://passportjs.org/guide/login/
但这没有用。猜猜这只是因为用户对象包含散列密码...... 有谁曾经尝试过这个并且可以告诉我它是如何工作的?
【问题讨论】:
-
passportjs.org/guide/username-password 在这里您可以找到如何使用用户名密码 stategy 登录
-
不,我知道如何使用表单登录和注销。我希望他们能够在没有任何登录的情况下登录。他们有时会通过邮件收到一个链接,我希望他们在打开该个人链接后自动登录。所以我尝试将用户对象放入会话中,但这也不起作用......
标签: javascript node.js express passport.js