我将下面的函数放在LoginController类中,以将用户重定向到不同的视图,登录后我得到了这个419|过期页面。
protected function authenticated(Request $request, $user) {
if ($user->PRIVILEGE == 'C') {
return redirect()->route('/users');
} else if ($user->PRIVILEGE == 'B') {
return redirect('/blog');
} else {
return redirect('/');
}
}
-
首先将其放入登录控制程序类:使用Illuminate\Support\Facades\Auth
-
注释掉这行protected$redirectTo=并在LoginController类中添加此功能:
公共函数redirectPath(({
if(Auth::user()->privilege =='C'){ return '/users'; } if(Auth::user()->privilege=='B'){ return '/blog'; }
}
查看appHttpMiddlewareRedirectIfAuthenticated.php
中的handle
方法,您会发现用户通过Auth检查后,会收到重定向。
此类设计用于在验证后将用户重定向到正确的landing
页面。
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->check()) {
$user = Auth::user();
if ($user->PRIVILEGE == 'C') {
return redirect()->route('/users');
}
if ($user->PRIVILEGE == 'B') {
return redirect('/blog');
}
return redirect('/');
}
return $next($request);
}