PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PHP-Zend Framework 2 CSRF保护大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

目前,我尝试使用Zend Framework 2的CSRF保护.

但是每次发送表单时,都会出现以下错误消息:

我以这种方式实现了CSRF保护:

1)创建一个Form类并添加csrf:

$this->add(array(
    'type' => 'Zend\Form\Element\Csrf',
    'name' => 'secret',
    'options' => array(
        'csrf_options' => array(
            'timeout' => 600
        )
    )
));

2)在视图文件中回显了csrf元素:

 echo $this->form()->openTag($forgotpasswordForm);
 echo $this->formRow($forgotpasswordForm->get('email'));
 echo $this->formRow($forgotpasswordForm->get('secret'));
 echo $this->formSubmit($forgotpasswordForm->get('submit'));
 echo $this->form()->closeTag($forgotpasswordForm);

我发现csrf令牌未存储在会话中,但是为什么呢?

解决方法:

我的控制器中有以下行:

$forgotpasswordForm = new Forgotpassword();
$forgotpasswordForm->prepare();

我将$forgotpasswordForm-> prepare()移到了视图文件,现在它可以工作了:-)

谢谢您的支持

大佬总结

以上是大佬教程为你收集整理的PHP-Zend Framework 2 CSRF保护全部内容,希望文章能够帮你解决PHP-Zend Framework 2 CSRF保护所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: