我确实阅读了关于Forms的The Symfony's Book,但没有找到与表格参数命名相关的任何答案。我的情况:
我正在尝试使用本机Symfony2框架实现简单的REST应用程序。 我有一个控制器,我使用Form Class来管理所有的东西。它看起来像这样:
public function newAction()
{
$task = ...;
$form = $this->createForm(new TaskType(), $task);
// ...
}
我的表单类是:
class TaskType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('task')
->add('dueTask')
->add('save', 'submit', array('label' => 'Add gift'))
;
}
public function getName()
{
return 'task';
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'csrf_protection' => false,
));
}
}
我有一个能够向我的API发送POST请求的JavaScript客户端(在这种情况下创建一个新任务)。 所以我的问题是:
主要问题:我必须在名为任务[任务] 和任务[dueTask] 的请求中发送参数。但我不想要它。我不想依赖表单名称。但如果没有提供正确的表格名称,我的表格就像无效一样。我该如何管理?
可选问题:当应用程序是RESTfull时,保护我的API的最佳做法是什么?如你所见,我关掉了csrf protection。如何在客户端(移动应用程序)和服务器端(Symfony2)之间共享一些秘密。
谢谢。