Laravel 5.2 如何仅为经过身份验证的用户保护路由


laravel 5.2 how to protect route only for authenticated user

我是LaRavel的新手,我已经安装了Auth Scaffold,这是到目前为止的路线。

Route::group(['middleware' => ['web']], function () {
    Route::auth();
    Route::get('/home', 'HomeController@index');    

    Route::get('addthreadhtml', function()
    {
        return View::make('addThreadForm');
    });
    Route::post('thread/add', 'ThreadController@addthread');
    Route::get('thread/showall', 'ThreadController@showallthread');
});

我想保护 addthreadhtml 免受未经身份验证的用户访问,如果用户不登录,他们将被重定向到另一个视图。

我该怎么做?

将身份验证中间件添加到要保护的路由中:

Route::get('addthreadhtml', ['middleware' => 'auth', function () {
    return View::make('addThreadForm');
}]);

如果你只想要函数的身份验证,你可以把它放在顶部代码上

if(!Auth::user('id')){
   //redirect to any view not require auth
}

或此代码

if (Auth::check()) {
    // The user is logged in...
}