当前位置:  开发笔记 > 程序员 > 正文

在Symfony中启用CSRF的功能测试表单

如何解决《在Symfony中启用CSRF的功能测试表单》经验,为你挑选了0个好方法。

在Symfony中启用CSRF保护的情况下,为测试表单创建功能测试的最佳方法是什么?

目前,我必须在每个表单提交之前添加以下代码:

  $form = new sfGuardFormSignin();
  $token = $form->getCSRFToken();
  $token_name = $form->getCSRFFieldName();

然后我添加$ token和$ token_name来形成如下参数:

call('/login', 'POST', array (
    'signin' => 
    array (
      'username' => $username,
      'password' => $password,
      $token_name => $token,
    )))

文档中建议的选项:

'_with_csrf' => true,

根本不起作用.

是否有更简单的方法可以避免为每个手动测试表单添加令牌?或者有没有办法在运行测试时关闭csrf检查?

当你必须测试1-2个表单时,我上面描述的方式是可以的,但如果项目包含数十个独特的表单,则会变得很痛苦.

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有