我使用 Laravel 的默认身份验证进行多重身份验证。我有两种类型的用户管理员和普通用户。对于管理员,我使用了管理员保护,如果我在不同的浏览器中以两种类型的用户身份登录,它工作正常,但问题是当我在注销时在同一个浏览器中以管理员和用户的身份登录时它正在将我重定向到管理员登录页面。如果我从管理面板注销然后到管理员登录页面,我想被重定向,否则如果我从用户面板注销,它应该将我重定向到“/”路由。这是我在验证用户文件中的注销方法代码。
public function logout(Request $request)
{
if(Auth::guard('admin')->check()) $redirect = '/admin/login';
else $redirect = '/';
$this->guard()->logout();
$request->session()->flush();
$request->session()->regenerate();
return redirect($redirect);
}
这是双方管理员和用户的注销表单。
<a href="{{ url('/logout') }}" onclick="event.preventDefault();
document.getElementById('logout-form').submit();">Logout</a>
现在如何解决这个问题?