邮箱认证后就跳到首页了,让人感觉云里雾里,我们必须要给点提示才行。
打开 VerificationController ,此控制器处理所有邮件认证相关逻辑。
查看它使用的VerifiesEmails Trait,发现verify方法中,有这么一句:
if ($request->user()->markEmailAsVerified()) {
event(new Verified($request->user()));
}
这句话的意思是,邮箱认证通过后,调用Verified事件。那么,我们可以利用监听这个事件给前台返回消息。
我们在app/Providers/EventServiceProvider.php中添加事件的监听器:
...
<?php
class EventServiceProvider extends ServiceProvider
{
/**
* The event listener mappings for the application.
*
* @var array
*/
protected $listen = [
.
.
.
IlluminateAuthEventsVerified::class => [
AppListenersEmailVerified::class,
],
];
...
}
一个事件可以有多个监听器。
使用php artisan event:generate生成监听器,然后在EmailVerified监听器中:
class EmailVerified
{
public function handle(Verified $event)
{
session()->flash('success', '邮箱验证成功啦');
}
}
@foreach (['danger', 'warning', 'success', 'info'] as $msg)
@if(session()->has($msg))
@endif
@endforeach
页面更新:2024-04-25
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号