我要实现的目标是在用户通过Laravel 5.8项目中的API端点注册时向他们发送电子邮件验证通知。为此,我已经完成了以下
App\User
实施Illuminate\Contracts\Auth\MustVerifyEmail
合同use Illuminate\Contracts\Auth\MustVerifyEmail;
class User extends Authenticatable implements MustVerifyEmail
{
use HasApiTokens, Notifiable;
...
}
用户表的email_verified_at
列
在verify
中将web.php
设置为true
Auth::routes(['verify' => true]);
AuthController
的注册方法中发送通知public function register(Request $request) {
$user = User::create([
'firstname' => $request->firstname,
'lastname' => $request->lastname,
'username' => $request->username,
'password' => bcrypt($request->password)
]);
if ($user) {
$user->sendEmailVerificationNotification();
}
}
我收到电子邮件通知,但是该链接将我重定向到登录页面。为什么会发生这种情况,而不是实际验证电子邮件?
请注意,我的users
表没有email
列,它使用username
列来存储电子邮件。