为了账号安全,请及时绑定邮箱和手机立即绑定

登录视图显示空白页面,网址为:/login 登录时

登录视图显示空白页面,网址为:/login 登录时

PHP
12345678_0001 2021-06-29 13:47:56
我正在使用 Laravel 内置身份验证方法。我有一个重定向功能,它返回不同用户角色的路由。转到它时它不会重定向到指定的 URL,/login它只是/login在 HTML 中显示一个带有普通路由 ( )的空白 URL我已经搜索了这个文档,但找不到这个问题的解决方案。这段代码确实产生了我认为的问题://Auth/LoginController protected function redirectTo(){    if (!Auth::guest()) {        if (Auth::user()->is_active != 0) {            if(Auth::user()->hasRole('administrator')) {                $this->redirectTo = '/admin';                return $this->redirectTo;           } else if(Auth::user()->hasRole('customer')) {                $this->redirectTo = '/customer';                return $this->redirectTo;           } else {              return '/logout';            }         } else {            return '/dashboard';        }    } else {        return '/login';    }}当我使用重定向时: protected function redirectTo()    {        if (!Auth::guest()) {            if (Auth::user()->is_active != 0) {                if(Auth::user()->hasRole('administrator')) {                    $this->redirectTo = '/admin';                    return redirect($this->redirectTo);               } else if(Auth::user()->hasRole('customer')) {                    $this->redirectTo = '/customer';                    return redirect($this->redirectTo);               } else {                  return redirect('/logout');                }             } else {                return redirect('/dashboard');            }        } else {            return redirect('/login');        }    }我收到此错误:此页面无效 [..] 重定向您太多次。转到登录路线时,我如何重定向用户。提前致谢!!
查看完整描述

1 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

由于与另一个登录重定向功能冲突,这解决了重定向和太多重定向错误:


protected function loggedOut(Request $request) {

    return redirect('/login');

}


    protected function redirectTo()

{

    if (!Auth::guest()) {

        if (Auth::user()->is_active != 0) {

            if(Auth::user()->hasRole('administrator')) {

                $this->redirectTo = '/admin';

                return redirect($this->redirectTo);

           } else if(Auth::user()->hasRole('customer')) {

                $this->redirectTo = '/customer';

                return redirect($this->redirectTo);

           } else {

              return redirect('/logout'); 

           } 

        } else {

            return redirect('/dashboard');

        }

    } else {

        return view('auth.login');

    }

}


查看完整回答
反对 回复 2021-07-02
  • 1 回答
  • 0 关注
  • 285 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信