我的控制器中有以下代码段:
public function beforeFilter() {
$this->autoRender = false;
...
$this->Auth->allow('email');
}
public function email() {
...
$this->show();
...
}
public function show() {
...
}
我的 show
操作需要身份验证,但是 email
不是。
这个 email
action表示在hadoop作业完成时接受jobendannotifier的通知,因此我不能在该页上进行身份验证,因为hadoop将访问该页https://hadoop.apache.org/docs/r1.2.1/api/org/apache/hadoop/mapred/jobendnotifier.html )
我的 show
action基本上为完成的hadoop作业生成并可视化报告,当我的作业完成时,我希望在系统中自动生成它们(缓存它们),因此稍后当用户访问页面时,它将从缓存加载,速度会快得多。这就是我打电话给 show
来自 email
行动。
我当然可以访问 email
默认情况下不登录的操作,但是当我调用 show
来自的操作 email
它会将我重定向到主页,说你必须登录。
简而言之:如果我调用 show
我的行动 email
它不需要身份验证吗?由于不呈现页面,因此只进行计算。
提前谢谢。
1条答案
按热度按时间2w2cym1i1#
按照你的逻辑,$this->auth->allow('email');要绕过电子邮件方法的身份验证,
同样的方法,你可以设置绕过显示从电子邮件功能,如