定操作禁用驗證我有我的控制器下面的代碼片段:在同一個控制器
public function beforeFilter() {
$this->autoRender = false;
...
$this->Auth->allow('email');
}
public function email() {
...
$this->show();
...
}
public function show() {
...
}
我show
動作需要身份驗證,但是不email
。
email
動作表示在我的hadoop作業完成時接受jobEndNotifier的通知,所以我無法在該頁面上進行身份驗證,因爲它將由hadoop訪問。 (https://hadoop.apache.org/docs/r1.2.1/api/org/apache/hadoop/mapred/JobEndNotifier.html)
我show
作用主要產生及呈現的成品Hadoop的工作報告,並在我的工作完成後我想自動生成它們(它們緩存)系統,所以後來當用戶訪問該頁面,它將從緩存中加載,速度會更快。這就是我從email
操作調用show
操作的原因。
當然我可以訪問email
動作,而不默認登錄,但是當我打電話show
行動從email
將我重定向到主頁上說你必須先登錄。
所以在短暫的:如果我從我的email
操作調用show
操作,我可以設置它是否需要身份驗證?由於頁面未呈現,因此只進行計算。
在此先感謝。
你在問題的代碼得到什麼錯誤?從你描述的'show'中的代碼應該在一個模型中 - 這是由兩個控制器動作調用的。然而,它只會像描述的那樣工作,這可能意味着您正在查看錯誤並做出錯誤的假設。 '它會將我重定向到主頁,表示您必須先登錄。<< - 重定向是什麼?這不是驗證組件。 – AD7six
是的,謝謝你指出這一點。我首先想到這是由於Auth Component的'自動'重定向,因爲'show'操作需要身份驗證,但不是,它是我通過檢查失敗的其他條件。現在它工作,謝謝。 – zdtorok