簡體   English   中英

Laravel 4.2 | 構造beforeFilter-身份驗證檢查

[英]Laravel 4.2 | construct beforeFilter - auth check

我有以下代碼:

function __construct() {
  $this->beforeFilter('auth');

  if (Auth::user()->hasRole('A')) {
    return \Redirect::route('B')->send();
  }
}

Route::filter('auth', function()
{
    if (Auth::guest())
    {
        if (Request::ajax())
        {
            return Response::make('Unauthorized', 401);
        }
        else
        {
            return Redirect::guest('auth/login');
            die();
        }
    }
});

結果是這個錯誤:

在null上調用成員函數hasRole()

身份驗證過濾器應自動將我重定向到身份驗證頁面。 但是,直到完成所有功能,它才會這樣做。

有什么建議么?

好吧,這是解決方案:

function __construct() 
{
  if ($this->beforeFilter('auth')) {
    if (Auth::user()->hasRole('A')) {
      return \Redirect::route('B')->send();
    }
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM