2016-07-15 41 views
1

私はSentinelを使用してユーザーを認証し、認証ミドルウェアとして使用しています。Laravel 5.1 Sentinel :: getUser()return null

ミドルウェアコード:

public function handle($request, Closure $next) 
{ 
    var_dump(Sentinel::guest()); // prints false 
    if (Sentinel::guest()) { 
     if ($request->ajax()) { 
      return response('Unauthorized.', 401); 
     } else { 
      return redirect()->guest('/login'); 
     } 
    } 

    return $next($request); 
} 

コントローラコード:ミドルウェアでiが(api/v1/temp/users/accountへのvar_dumpを閲覧する場合、

Route::group(['middleware' => ['auth']], function() { 
    Route::get('api/v1/temp/users/account', 'App\Http\Controllers\[email protected]'); 
} 

routes.phpの

public function getAccount() { 
    var_dump(Sentinel::guest()); // prints true 
    return Sentinel::getUser(); 
} 

)が偽印刷されていますコントローラ内のvar_dump()は真実を表示していますが、これはナンセンスのようです。

どういうところが間違っていますか?

答えて

1

Laravelファサードの代わりにネイティブファサードを使用していたことが判明しましたCartalyst\Sentinel\Laravel\Facades\Sentinel。それは修正されました。