1

我有一个基本的 node.js / Express 服务器,使用 express-stormpath 进行用户身份验证。无需电子邮件验证,一切正常。显然,出于多种原因,电子邮件验证是可取的,但我的电子邮件验证用户无法将标准登录流程用于受限路线。

我有自定义路线的具体示例:

app.get('/myaccount', stormpath.loginRequired, function(req, 
res.send('Your email address is: ' + req.user.email);});

此路线非常适合在电子邮件验证之前注册的用户。

但是,对于在电子邮件验证后注册的用户来说,它已被破坏。这些用户收到一封电子邮件,单击链接,进入确认屏幕(“您的帐户已成功验证并可以使用”),并在我的 Stormpath 仪表板中标记为“已启用”。

具体来说,如果他们输入了正确的密码,他们会再次被发送到http://glacial-hollows-8156.herokuapp.com/login?next=%2Fmyaccount,它会再次显示登录屏幕,无止境。如果他们输入了错误的密码,他们会收到标准错误告诉他们

有任何想法吗?也许电子邮件验证帐户未正确初始化?对于 Stormpath 提供的路线,例如“/me”,这种行为也是相同的,所以我不认为它是我的路线。当我打开和关闭电子邮件验证时,/myaccount 继续为未通过电子邮件验证的用户工作,并且总是以这种方式为通过电子邮件验证的用户中断

4

1 回答 1

1

这是stormpath仪表板上“链接基本URL”的配置问题

它默认为“ https://api.stormpath.com/emailVerificationTokens ”,用于验证用户 - 尽管他们实际上无法登录

相反,将“链接基本 URL”更改为http://localhost:3000/verify

请注意,此链接已完全过时,尽管只有 3 个月大... https://stormpath.com/blog/how-to-add-billing-to-your-api/不要费心尝试使用 /已验证

于 2015-10-30T19:59:45.953 回答