如何使用Laravel默认重置密码链接附加电子邮件

时间:2019-01-15 09:39:04

标签: php laravel laravel-mail

如何将电子邮件与令牌一起附加?

public function toMail($notifiable)
{
    if (static::$toMailCallback) {
        return call_user_func(static::$toMailCallback, $notifiable, $this->token);
    }

    return (new MailMessage)
        ->action(Lang::getFromJson('Reset Password'),
            url(config('http://mywebsite.local/') . 
                route('password.reset', $this->token, false)));
}

`

1 个答案:

答案 0 :(得分:0)

如果创建一个具有2列(或3列)的名为“ password_reset”的表会更好。每行都有一个user_id和一个唯一令牌,您在用户提交“我忘记了密码”表单时会生成并存储该令牌。现在,负责重置过程的路由将采用password/reset/{user_id}/{token}格式。

当用户访问该URL时,必须验证令牌已链接到user_id,并且当用户提交重置密码表单时,必须删除password_reset表上的该行。