laravel中用于多身份验证的电子邮件验证

时间:2019-01-06 11:12:42

标签: laravel authentication

Auth::routes(['verify'=>true]);

如何在以下路线中添加以上验证标签?

Route::prefix('admin')->group(function(){
Route::get('/dashboard','AdminController@index')->name('admin.dashboard')->middleware('guest:a');
Route::get('/logout','Admin\LoginController@logout');
Route::get('/','Admin\LoginController@showLoginForm')->name('admin.login');
Route::post('/','Admin\LoginController@login');

Route::post('/password/email','Admin\ForgotPasswordController@sendResetLinkEmail')->name('admin.password.email');
Route::get('/password/reset','Admin\ForgotPasswordController@showLinkRequestForm')->name('admin.password.update');
Route::post('password/reset','Admin\ResetPasswordController@reset');
Route::get('/password/reset/{token}','Admin\ResetPasswordController@showResetForm')->name('admin.password.reset');
Route::get('/register','Admin\RegisterController@showRegistrationForm')->name('admin.register');
Route::post('/register','Admin\RegisterController@register')->name('admin.register');});

1 个答案:

答案 0 :(得分:0)

您需要提供更多信息并进行详细说明,但是我认为您正在通过电子邮件验证用户。所以

Auth::routes(['verify'=>true]);

仅表示用户当前是否已通过身份验证。

如果您希望仅对经过身份验证的用户访问您的路由,则有两种方法可以实现此目的:

第一种选择是像这样在控制器的构造函数中添加auth中间件:

class YourController extends Controller
{
    public function __construct()
    {
        $this->middleware('auth');
    }
    ...

第二种选择是将中间件添加到路由文件中,并包括只能在该组中访问的路由,如下所示:

Route::group(['middleware' => 'auth'], function () {
   Route::get('/test','Admin\TestController@test');
   ...

希望对您有所帮助,我也不是100%知道您的意思,因此您可能应该进一步解释您的问题。