从api注册时发送验证电子邮件

时间:2018-12-12 14:45:03

标签: laravel

当您通过API注册时,我正试图让Lavarel发送验证电子邮件。这可能吗?

我已经将MustVerifyEmail实现添加到User类,并添加了Auth :: routes(['verify'=> true]);到我的api.php文件的顶部(我的路线在哪里)。 SMTP服务器也已正确配置。

我想我可能做错了什么。希望能收到您的来信:)

P.S。我今天第一次开始使用Laravel。因此,这可能只是一个非常简单的错误。

1 个答案:

答案 0 :(得分:1)

如果您使用的是自定义RegisterController,则应该可以致电

$user->sendEmailVerificationNotification();

这又称为

$this->notify(new Notifications\VerifyEmail);

这是因为您的用户在Illuminate \ Foundation \ Auth \ User中实现了MustVerifyEmail

编辑----

您还可以使用事件new Registered,该事件应在EventServiceProvider中注册,这将调用SendEmailVerificationNotification,而事件将依次调用$event->user->sendEmailVerificationNotification();

event(new Registered($user = $this->create($request->all())));

注意:这在laravel 5.7中有效