我正在使用 zend framework-2 做项目。我想通过 URL 限制对某些 Web 目录的访问(如果用户没有登录)。如果用户尝试登录,我需要重定向登录页面。这就是我所做的(粗略的想法不是代码)。
授权控制器
if(username and password ok){
setcookie('username', $username);
setcookie('password', $password);
//redirect to AlbumController indexAction
return $this->redirect()->toRoute('album', array('controller' => 'album', 'action' => 'index'));
}
所以在 AlbumControler 我添加了这段代码
public function indexAction()
{
if(isset ($_COOKIE['username']) && isset ($_COOKIE['password'])){
//some codes
}
else{
//if user not logged redirect to loogin page
return $this->redirect()->toRoute('auth', array('controller' => 'auth', 'action' => 'index'));
}
}
所以如果我使用这种方式,我需要在每个动作中添加上面的代码。所以我的问题是这样可以吗?还是他们这样做的简单方法?