suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Über Laravel 5.2 Mehrbenutzer-Authentifizierungsfunktions-Login-Jump-Problem

Bei der Bezugnahme auf http://laravelacademy.org/post/3502.html für die Front-End- und Back-End-Benutzerauthentifizierung
sind ein Problem aufgetreten, bei dem ein nicht angemeldeter Benutzer, der auf /admin zugreift, zu / springen sollte. admin/login, aber ich weiß nicht, warum es immer zu /login springt.

阿神阿神2780 Tage vor466

Antworte allen(3)Ich werde antworten

  • 仅有的幸福

    仅有的幸福2017-05-16 16:55:08

    应该在中间件里修改跳转地址

    Antwort
    0
  • PHP中文网

    PHP中文网2017-05-16 16:55:08

    AppHttpMiddleware下的Authenticate
    return redirect()->guest('admin/login');
    即可

    Antwort
    0
  • 天蓬老师

    天蓬老师2017-05-16 16:55:08

    Authenticate 中间件

    public function handle($request, Closure $next, $guard = null)
        {
            if (Auth::guard($guard)->guest()) {
                if ($request->ajax()) {
                    return response('Unauthorized.', 401);
                } else {
                    return redirect()->guest($guard.'/login'); //注意这里的$guard
                }
            }
    
            return $next($request);
        }

    route.php

    Route::group(['middleware' => ['auth:admin']], function () { // auth:admin 调用auth中间件的时候传递一个admin,这个admin正好是被中间件的$guard接收,于是访问后台的时候都会被跳转导admin/login,同理 前台用户登陆的中间件可以是 auth:user , 这样会跳转到user/login
    
            Route::get('admin/index', 'AdminController@index');
        });

    Antwort
    0
  • StornierenAntwort