我被用户重置密码困住了。这些是我已经完成的步骤。
用户选择“重置密码链接”。
Sails.js 生成 GUID 并将其保存到 resetPassTable。
电子邮件发送到用户邮箱。
我有具有重置操作的 changePwdController
- 发送的电子邮件,包含 localhost:1337/changePwd/reset/secrethash
- 用户点击该链接并被定向到我的操作
基本上我可以访问 id 中的哈希值,例如:
var secretHash = req.param('id')
我根据数据库中的哈希检查该哈希,然后可以决定要做什么。
- 如果检查通过,意味着数据库中存在该散列...
- ...如何向用户显示两个简单的文本框(新通过和重复通过)和发送按钮?
最佳答案
当用户点击电子邮件中的链接时,您应该显示密码重置表单(这通常只是呈现一个 View )。不过,您确实需要将哈希传递给该 View ,也许是 URL 参数?
然后,一旦用户提交密码重置表单,如果哈希值与数据库中的不匹配,则执行密码重置或拒绝。所以你需要两个不同的 Action 。一个用于显示 View ,另一个用于表单在提交时点击。
关于javascript - 使用 sails.js 编写密码重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20272501/