symfony关闭CSRFProtection
来源:互联网 发布:软件找不到数据库文件 编辑:程序博客网 时间:2024/06/16 08:46
当我们使用symfony自带的sfGuardPlugin的时候。会自动生成登录验证页面。
默认情况下,页面中会有一个默认的参数叫_csrf_token的提交。
现在我们这边需要做个页面,但是不需要_csrf_token这个参数。
我们需要更改form,关闭CSRFProtection.
我们打开BasesfGuardFormSignin.class.php页面。
class BasesfGuardFormSignin extends BaseForm
{
public function setup()
{
//在页面中加入这一行,就能关闭CSRFProtection了。这样登录页面就没有_csrf_token了。
$this->disableCSRFProtection();
$this->setWidgets(array(
'username' => new sfWidgetFormInputText(),
'password' => newsfWidgetFormInputPassword(array('type' =>'password')),
'remember' => new sfWidgetFormInputCheckbox(),
));
$this->setValidators(array(
'username' => new sfValidatorString(),
'password' => new sfValidatorString(),
'remember' => new sfValidatorBoolean(),
));
if(sfConfig::get('app_sf_guard_plugin_allow_login_with_email',true))
{
// 从配置文件中读取sf_guart_plugin_allow_login_with_email参数
$this->widgetSchema['username']->setLabel('用户名');
$this->widgetSchema['password']->setLabel('密码');
$this->widgetSchema['remember']->setLabel('记住我');
}
$this->validatorSchema->setPostValidator(newsfGuardValidatorUser());
$this->widgetSchema->setNameFormat('signin[%s]');
}
}
默认情况下,页面中会有一个默认的参数叫_csrf_token的提交。
现在我们这边需要做个页面,但是不需要_csrf_token这个参数。
我们需要更改form,关闭CSRFProtection.
我们打开BasesfGuardFormSignin.class.php页面。
class BasesfGuardFormSignin extends BaseForm
{
// 从配置文件中读取sf_guart_plugin_allow_login_with_email参数
}
- symfony关闭CSRFProtection
- symfony
- symfony
- Symfony
- symfony
- symfony
- symfony
- symfony
- Symfony
- Symfony
- Symfony简介
- symfony plugins
- Symfony 介绍
- 安装symfony
- symfony概述
- SYMFONY 命令
- symfony 学习
- symfony常用命令
- 黑马程序员_Java学习日记13_IO流2
- Good Doc
- android中listview的超简单运用
- jjjjjjjjjjjjjj
- 一场Fuck引发的骂战 福布斯 VS TechCrunch
- symfony关闭CSRFProtection
- 推荐android几本研究深入的书籍(对开发人员很有帮助)
- qt国际化与本地化中一个需要注意的地方
- 系统钩子应用--如何通过编程实现禁止Windows系统关机?
- 微小说 小感动
- javascript 字符串处理
- 两个小故事--凸显职场能力
- cocos2d使用半单例
- vi显示行号