我尝试在注册后进行电子邮件验证,但是使用我当前的代码,我的URL从"/"
更改为"/email/verify"
,但是模板没有更改,我可以毫无问题地使用应用程序。 PS。我也在使用VueJS。我还在MustVerifyEmail
模型中添加了User
,就像在官方doc.
PS。我收到了电子邮件注册。
web.php
Route::middleware('guest')->get('/', function () {
return redirect('/login');
});
Auth::routes(['verify' => true]);
Route::middleware(['auth', 'verified'])->get('/', function () {
return view('layouts.app');
});
Route::middleware(['auth','verified'])->get('/{any}', function () {
return view('layouts.app');
})->where('any', '.*');
刀片文件
如果我是身份验证者,则可以访问该应用程序(Vuejs路由),否则我将得到另一个页面,例如:注册,登录和验证不起作用。
@auth
<div id="app">
</div>
@else
<main class="py-4">
@yield('content')
</main>
@endauth
答案 0 :(得分:0)
wait
包括身份验证所需的所有路由。当您将from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 20)
Filter_Row = wait.until(EC.visibility_of_element_located((By.XPATH, '//*[@id="filterRow"]')))
Filter_Row.clear()
传递给它时,它还将包括电子邮件验证路由,其中也包括Auth:routes()
。 Laravel为您做到这一点。
答案 1 :(得分:0)
我更改了刀片服务器的逻辑,在以前的服务器中,我检查了是否为auth /或guest,但没有检查其邮件是否已验证。
@if(auth()->guest() || (auth()->check() && is_null(auth()->user()->email_verified_at)))
@if(url()->current() === env('APP_URL'))
<script>
window.location = "/email/verify";
</script>
@endif
<main class="py-4">
@yield('content')
</main>
@else
<div id="app">
</div>
<script src="{{mix('js/app.js')}}"></script>
@endif