2014-01-07 35 views
0

調用的事件處理程序是否有可能使其執行上的每個控制器操作調用的Yii調用事件處理程序。 基本上我有一個RESTful應用程序。在當前的每個請求中,它明確地調用認證功能。我想要的是當發出任何請求時的認證函數調用。Yii中如何對每個請求

我所做的一切

class MyController extends RestController{ 
public function actionDosomething(){ 
    $this->authenticate();// I don't want this line to be put in every controller action. 
} 
} 

回答

1

你的答案是beforeAction回調。把它放在你的主控制器文件中。

public function beforeAction($action) { 

    if(in_array($action, array(/* you list of actions */))) 
    { 
     //do your thing 
    } 
} 
+0

似乎是確切的答案。非常感謝你。 –

+0

如果滿足您的要求,請標記爲完整答案,謝謝:) – Rohan

+0

是的,太好了。再一次感謝你。 –