2015-04-23 23 views
0

我是ZendFramework2中的新成員,需要立即檢查用戶身份。現在,我在每一個控制器行動正在檢查(示例代碼在行動檢查身份)zf2 - 我想在控制器中同時檢查用戶的hasIdentity()而不是在每個控制器動作

if (! $this->getServiceLocator() 
       ->get('AuthService')->hasIdentity()){ 
      return $this->redirect()->toRoute('login'); 
} 

這不是很好的做法,以便幫助我減少爲所有action()方法調用一次。未經授權的用戶將重定向到登錄表單

感謝

+1

這裏是你在做什麼尋找:http://stackoverflow.com/a/14138160/1386551 – blackbishop

回答

0

一種選擇是創建一個方法,「對派遣」到控制器火災:

class YourController extends AbstractActionController { 

public function onDispatch($event){ 
    $this->yourIdentityCheckFunction(); 
    return parent::onDispatch($event); 
} 
//your other actions/identityCheck methods etc... 

}