2014-06-15 2 views
2

이 좋아 내 슬림 응용 프로그램에서 개인 경로에 대한 액세스를 방지하기 위해이 작은 인증 미들웨어를 만들어 '/ login') 일단 사용자가 이미 인증 되었으면?이미 loggedin 미들웨어 슬림 PHP는

내가 다른 미들웨어과 같이 만들어야합니다

$loggedIn = function($app) { 
    return function() use ($app) { 
     if (isset($_SESSION['user'])) { 
      $app->redirect('/members'); 
     } 
    }; 
}; 

그리고 여기에 추가 :

$app->get('/login', $loggedIn($app), function() use ($app){ 
    // something in here. 
}) 

답변

1

을 당신이 /login 경로를 치는 사용자가 로그인 유지하려는 경우, 당신은 단지 하나를 사용할 수 있습니다 (예 : 계정/사용자 세부 정보 페이지 등) :

$app->get('/login', function() use ($app) { 
    if (isLoggedIn()) { 
     $app->redirect('/account'); 
    } 
    else { 
     // your standard login code here 
    } 
}); 
0 개의 경로 도우미가 해당 끝점으로 리디렉션됩니다.

isLoggedIn 미들웨어를 작성하는 것이 더 합리적이라고 생각합니다.