zoukankan      html  css  js  c++  java
  • laravel5.5 自带的忘记密码邮箱找回功能小记

           

    前沿: 看了半天登录注册,然后是这个忘记密码,有点头晕,只能说确实很菜。

    1. 执行php artisan route:list 查看当前所有路由,可以发现点击忘记密码时候执行的是ForgotPasswordController控制器中的showLinkRequestForm方法,打开了对应视图。

     2. 输入邮箱后点击发送邮件,执行的是ForgotPasswordController控制器中的sendResetLinkEmail方法

     

       控制器很干净,那方法应该是在引用的trait中了,打开SendsPasswordResetEmails这个trait,方法均在其中。

      

    3. 可以看到在sendResetLinkEmail方法中先对输入的邮箱进行了验证,然后发送邮件,再根据发送邮件返回的状态,执行对应的操作。

      

    4. 查看broken方法,发现其引用了Password类并且返回的是IlluminateContractsAuthPasswordBroker接口实例(这个说法不知道对不对)

      

      查看Password类发现

      

      查看发现IlluminateAuthPasswordsPasswordBroker类继承IlluminateContractsAuthPasswordBroker接口,顺利找到了

      sendResetLink方法,参数便是我们的输入的邮箱。

       

    5. 在sendResetLink方法中先根据邮箱获取用户数据,验证用户是否存在,然后执行了邮件发送

      

    6. 仔细查找父类以及引用的trait就可以发现我们想要的方法

      

      

      

      

       至此整体思路便大概理清楚了,剩下的我也还模糊,有待继续深究。

  • 相关阅读:
    记录-tomcat启动项目配置
    记录 -- js浏览器窗口关闭调用ajax
    远程桌面时出现身份验证错误,要求的函数不受支持
    记录-马斯洛需求层次理论模型
    记录-powerDesigner 导入sql文件注释问题
    记录-Java md5加密
    记录--js 剪贴板操作 (转载)
    如何判定一台计算机的唯一性
    GO_OOP简单摘要
    后台执行命令
  • 原文地址:https://www.cnblogs.com/cyclzdblog/p/7599466.html
Copyright © 2011-2022 走看看