Laravel 로그인 후 원래 대상으로 다시 리디렉션
이 기능은 웹 애플리케이션에서 자주 필요합니다. Laravel은 필수 기능에 대한 우아한 솔루션을 제공하여 이것이 기회를 놓친 것이 아닌가 하는 의문을 갖게 합니다.
Laravel 5.3 이상
Scott이 지적했듯이 기본 현재 메소드가 존재합니다:
return redirect()->intended('defaultpage');
Laravel 5 최대 5.2
인증 미들웨어:
// redirect to "/login" and store the URL in session if (Auth::guest()) { return redirect()->guest('login'); }
로그인 작업:
// redirect back to intended page or default if not available if (Auth::attempt(['email' => $email, 'password' => $password])) { return redirect()->intended('defaultpage'); }
의 경우 라라벨 4
이전 버전에서는 공식적인 지원이 없었지만 여전히 구현할 수 있습니다.
인증 필터:
// redirect to "/login" and store the URL in session Route::filter('auth', function() { if (Auth::guest()) { return Redirect::guest('login'); } });
로그인 작업:
// redirect back to intended page or default if not available if (Auth::attempt(['email' => $email, 'password' => $password])) { return Redirect::intended('defaultpage'); }
Laravel 3의 경우
이전 접근 방식에서는 리디렉션을 세션에 저장하는 것이 포함됩니다.
Auth 필터:
Route::filter('auth', function() { if (Auth::guest()) { Session::put('redirect', URL::full()); return Redirect::to('/login'); } if ($redirect = Session::get('redirect')) { Session::forget('redirect'); return Redirect::to($redirect); } });
컨트롤러:
// login action public function post_login() { if (Auth::attempt($credentials)) { return Redirect::to('logged_in_homepage_here'); } return Redirect::to('login')->with_input(); }
이 접근 방식을 사용하면 모든 구성 요소가 후속 검색을 위해 세션에서 리디렉션을 설정할 수 있습니다.
위 내용은 Laravel 로그인 후 사용자를 원래 목적지로 다시 리디렉션하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!