2014-11-24 1 views
0

나는 Cordova 및 API REST가 포함 된 하이브리드 응용 프로그램에서 작업하고 있습니다. 사용자 등록을 위해 전화 번호 (WhatsApp와 같은)를 확인하기 위해 SMS를 사용하고 있습니다.API 토큰 식별자 Laravel이있는 사용자

해당 사용자에 대한 토큰을 생성하며이 토큰은 HTTP를 통한 HTTP 헤더로 이동하는 API REST 메서드를 사용하는 데 사용됩니다.

내 API REST가 사용자를 식별하고 사용자 ID를 얻기 위해 항상 쿼리를 사용하지 않도록하려면 "필터"또는 비슷한 것을 만들어야합니다. 컨트롤러에 대해 "자동"이 있지만 찾지 못합니다. 아무것도 비슷한 ...

나는이 같은 것을 사용할 수 있습니다

Route::filter("auth", function() 
    { 
     // ...get database user 
     if (Input::server("token") !== $user->token) 
     { 
      App::abort(400, "Invalid token"); 
     } 
    }); 

하지만 어떻게 내 컨트롤러가 어떤 사용자가 요청 알고 있습니까?

좋은 해결책입니까?

Route::filter('auth.api', function() 
{ 

    $token = Request::header('Token'); 
    $user = User::where('token', '=', $token)->firstOrFail(); 

    Auth::login($user); 

    $result = Auth::onceBasic('username'); 

    if ($result) 
    { 
     echo $result; 
    } 

}); 

감사합니다.

답변