当我尝试从首页注销时,如果我使用的是管理员用户,我会被重定向到管理员仪表板,如果我使用的是普通用户,我会被重定向到用户帐户页面,我只能从管理员仪表板注销,这是我的注销功能:
public function __construct()
{
$this->middleware('guest')->except(['logout', 'destroy']);
}
public function logout(Request $request)
{
$this->guard()->logout();
$request->session()->invalidate();
return $this->loggedOut($request) ?: redirect()
->route('login')
->with('message', 'You have been logged out');
}
中间件认证
protected function redirectTo($request)
{
if (!$request->expectsJson()) {
return route('login');
}
}
中间件重定向
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->check()) {
if (Auth::user()->hasRole('administrator')) {
return redirect()->route('admin.dashboard.index');
} else {
return redirect()->route('account');
}
}
return $next($request);
}
中间件检查角色
public function handle($request, Closure $next, $role = 'administrator')
{
if (Auth::check()) {
if (Auth::user()->hasRole($role)) {
return $next($request);
}
abort('404');
} else {
return redirect()->route('admin.auth.login');
}
return $next($request);
}
路线。php
Route::get('login', 'Auth\LoginController@showLoginForm')
->name('login')
->middleware('web');
Route::post('login', 'Auth\LoginController@login')
->name('login')
->middleware('web');
Route::get('logout', 'Auth\LoginController@logout')
->name('logout')
->middleware('auth');
美元这个-
public function logout(Request $request)
{
$this->guard()->logout();
$request->session()->invalidate();
return $this->loggedOut($request) ?: redirect('/');
}
/**
* The user has logged out of the application.
*
* @param \Illuminate\Http\Request $request
* @return mixed
*/
protected function loggedOut(Request $request)
{
//
}
我发现问题出在我的帐户路径上,中间件存在web,所以我无法注销。我已经添加到所有routes web中间件,现在正在工作。:)
在本章中,我们将研究Grav中的Administrative Panel Dashboard 。 仪表板充当Grav管理面板插件的信息神经中枢。 您可以检查traffic statistics , create new backups , Grav updates , maintenance information ,查看最新页面更新,还可以借助此单页清除Grav缓存。 Step 1 - 您可以指
这是春虫吗?由于logout-success-url已设置且不安全,因此在到达logout-success-url后,似乎不应将用户重定向到无效的会话url。 日志如下所示:
我刚刚安装了XAMPP-Win32-5.5.30,在xampp控制面板中,Apache和mysql都启动了,没有任何错误,但我发现: 1)浏览器中的localhost重定向到另一个页面localhost/dashboard/而不是xampp起始页。
问题内容: 如何在“保存”上将用户重定向到其他应用? 我有两个应用,分别说和。如果用户单击“保存在” ,则应将其重定向到默认页面,而不是默认页面。 我不想做一个定制表格。 问题答案: 要在保存到管理员后更改重定向目标,你需要在类中重写(用于添加新实例)和(用于更改现有实例)。 请参阅中的原始代码。 而且,如果你希望人们在StackOverflow上继续为你提供帮助,则需要接受问题的答案。 快速示例
我想为管理员仪表板创建一个登录表单。我已经创建了相关的控制器和刀片,但当我尝试登录到管理仪表板时,EloquentUserProvider出现错误。我只想要一个管理员的登录表单,而不是用户。 错误: 雄辩的提供程序中的致命错误。php第114行:类型错误:传递给Illumb\Auth\EloquentUserProvider::validateCredentials()的参数1必须是Illumb\
我正在使用带有java配置和两个HttpSecurity配置的spring-security 3.2.0.rc2。一个用于REST API,一个用于UI。当我发布到/logout时,它重定向到/login?logout,但随后(错误地)重定向到/login。当我成功地输入用户名和密码时,我会被重定向到登录-注销,并且必须再次输入凭据才能进入主页面。因此,似乎login的permitAll不被用于l