2 个回答

你通过数据库查询数据库内是否邮箱和账号绑定得,如果有就发邮箱,没有就添加字段

POST /resetWithMail

接受邮箱

用户表里找到了 邮箱 mail= A@a.com

后端自定义一个字符串 S,
生成 hash=MD5(timestamp,S,mail)

yoursite.com/reset_pwd?hash=${hash}&timestamp=${timestamp}&mail=${mail}
发到 A@a.com 中,引导点击

/reset_pwd
检查 timestamp 是否超出当前时间很多 ,可能设置个 5分钟,这样。超出就说明这个没用了。

从 query 中 获取 hash ,用上面的生成方式生成一遍看看是不是一致

一致的话,跳转到一个带授权的密码重置页面。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题