•   欢迎来到21NN网.
  •   请记住本站网址www.21nn.cn

基于SpringBoot密码找回的要领完成(图文)【JAVA教程】,SpringBoot

摘要: 本篇文章给人人带来的内容是关于基于SpringBoot暗码找回的要领完成(图文),有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。近来在做本身的项目,其中有一个人人都晓得的功用就...
本篇文章给人人带来的内容是关于基于SpringBoot暗码找回的要领完成(图文),有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。

近来在做本身的项目,其中有一个人人都晓得的功用就是找回暗码。这里分享一下我的做法,由于这中心着实有太多坑了。所以纪录一下。

运用手艺:SpringBoot1.5.6、JPA、SpringSecurity4、MySQL、BootStrap等等等。。。

暗码找回流程图:

起首,先来给人人引见一下暗码找回的基本原理:

接着,根据流程图我们来完成一下起首第一步是点击跳转到找回暗码界面:我用的是这类体式格局人人随便

找回暗码界面为:

第二步:推断输入的账户是不是有用

下面是假如存在的话就生成URL链接:

backPassword:

第三步:推断重置表中是不是有该账户,重置表是一张保留URL的表(逾期时刻、sid、账户信息等)

如许做的目标是:假如存在该条数据而不去删除的话,下次找回暗码的时刻就会生成2条账户一样,然则sid不一样的数据,如许的害处是:发邮件的时刻不晓得该返回哪一个URL,由于有2条URL

第四步:邮件发送

我们先来看下结果:

接下来就是重要部分:怎样处置惩罚考证链接,起首我们能够看到/user/reset_password这个是一个要求背面是它的参数,所以牢记!

我们要写一个要求,路由就是/user/reset_password,与此同时须要在SpringSecurity中对该要求放行。考证的历程是如许的:起首把从要求传过来的sid和userName(也就是邮箱)和数据库中的sid和account比对,同时还要对照时刻是不是是在有用期30分钟内,假如这些都满足的话就返回true,否则为false。须要注重的是:这里有一个替代是空格替代为+号,是由于HTML传给背景的时刻+号被自动转为了空格,假如不替代为+号的话就会一向提醒考证失利!!!一旦返回true的话就代表考证URL经由过程,就跳转到重置暗码界面:

注重:我这里没有对考证举行优化,不该该有这么多的if else嵌套

对要求路由举行放行:假如不放行的话点击链接就会跳转至登录界面

跳转到重置页面,假如我们这时候2次输入的暗码不一致就会有以下的提醒,我这个是运用JS做的校验:

固然为了严谨我们在背景也举行2次暗码校验,假如输入的是一致的话才去更新信息,不一致的话就返回毛病

这里却是没什么,就是注重下在暗码保留到数据库之前,运用MD5+盐加密一下,以后保留就能够,我们来看下2次暗码输入准确的结果:页面提醒修正胜利背景无报错,这时候刻运用新暗码就能够举行登录

以上就是基于SpringBoot暗码找回的要领完成(图文)的细致内容,更多请关注ki4网别的相干文章!

分享到:

发表评论

评论列表

还没有评论,快来说点什么吧~

公众号二维码

微信公众号