在Laravel 5中注册多个身份验证

时间:2017-07-16 13:30:41

标签: php authentication laravel-5.3 laravel-routing laravel-authorization

我使用Laravel的默认身份验证进行多重身份验证。我有两种类型的用户管理员和普通用户。对于管理员,我使用过admin guard,如果我在不同的浏览器中以2种类型的用户身份登录,则可以正常工作,但问题是我在登录时以同一浏览器的管理员和用户身份登录它将我重定向到管理员登录页面。如果我从管理面板退出然后登录到管理员登录页面,我想要重定向。否则,如果我从用户面板退出,它应该将我重定向到' /&# 39;路线。这是我在验证用户文件时的注销方法代码。

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>

现在该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

当你以管理员身份退出时我明白了用户仍然希望被发送回/路由。我建议只是删除你的检查,如果当前用户是管理员,默认情况下将用户送回家。

相关问题