我在控制器及其相应视图(称为“反馈”)中为不需要身份验证的页面创建了一个函数,URL如下所示:
http://[DOMAIN]/products/feedback/11351/6673/24678/2/rt6a513gr45255hrt563443h2463hd63
URL工作时不需要身份验证,一切都是完美的。这个URL包含一个访问者需要填写的表单,然后这些数据直接进入数据库。问题是,提交表单时,如果访问者没有登录,则需要进行身份验证,并且过程会中断,这样表单中的数据就永远不会发送到数据库。我希望此URL不需要身份验证,从不,不在加载页面和表单时(此部分已正常工作),也不在提交表单时(这是我需要修复的问题,因为单击提交按钮时,立即需要身份验证)。
更新1:
我已经尝试在'app/controllers/products_controller.php'中包含以下代码:
function beforeFilter(){
........................
........................
........................
parent::beforeFilter();
$this->Auth->allow('feedback');
}
我的想法是排除
feedback
来自身份验证要求的操作。我是根据我在
https://book.cakephp.org/1.3/en/The-Manual/Core-Components/Authentication.html
:
例如,如果我们希望允许所有用户访问索引和视图
方法(但不是任何其他方法),我们将执行以下操作:
函数beforefilter()。{
$this->auth->allow('index','view');
我发现了同样的建议
CakePHP Bypass Auth component
绕过cakephp中的auth组件。