如果经过身份验证,Laravel重定向

时间:2016-08-31 07:41:41

标签: php laravel authentication

为什么我的重定向不起作用?我正在使用Laravel的本机授权,并且已将LoginController.phpRedirectIfAuthenticated.php重定向路径更改为admin,但没有运气。

以下是我的路线:

Auth::routes();

Route::get('/', 'HomeController@index');
Route::get('/home', 'HomeController@index');


Route::group(['prefix' => 'admin'], function () {

    Route::get('/', function () {
        return view('admin_temp');
    });

    Route::resource('users', 'WPUserController');

});

1 个答案:

答案 0 :(得分:1)

如果您的意思是要在登录后重定向用户,则可以在$redirectTo中更改Auth\AuthController.php变量:

/**
 * Where to redirect users after login / registration.
 *
 * @var string
 */
protected $redirectTo = '/';

如果您想将所有经过身份验证的用户重定向到某个网址 - 这是一个糟糕的主意,因为您的应用无法运行(用户将被重定向到每个reuqest的相同网址)。也许你想将未经过身份验证的用户重定向到登录页面或什么?

此外,您可以在handleUserWasAuthenticated()方法(Laravel 5.2)中覆盖Auth\AuthController.php或在sendLoginResponse()方法(Laravel 5.3)中覆盖Auth\LoginController.php。复制粘贴它并将return子句更改为以下内容:

return redirect()->route('my.route');