【发布时间】:2012-04-10 20:40:08
【问题描述】:
我正在构建一个通过网络服务与我的 symfony2 应用程序对话的移动应用程序 我找不到在特定控制器/操作上禁用 csrf 保护的方法
我想将注册数据发布到此操作并使用 sf2 表单验证。我没有在我的移动应用中调用表单
无法在操作中更改容器参数,抛出异常,因为它是一个冻结参数...
我不想为整个应用程序禁用表单保护
有什么线索吗?
谢谢!
更新:使用 symfony 2.1.x
/**
* {@inheritdoc}
*/
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'csrf_protection' => false,
));
}
【问题讨论】:
-
$form = $this->createForm($formType, $entity, array('csrf_protection' => false)); -
没有进行更多调查,但使用表单类型作为服务我不得不使用 SalmanPK 的解决方案,因为无法识别默认的 csrf_protection 选项。