我想使用Symfony服务器(使用FOSRestBundle)创建ReST基础结构。 有
在客户端,我有一个表单,它发送一个主体为
的POST请求{" the_name_of_my contact_form":{" name":" foo"," email":" foo @ example.org"}}
我的控制器(扩展FOSRestController)可以看到请求中的数据
$ request-> request-> get($ form-> getName())返回 {" name":" foo&# 34;,"电子邮件":" foo@example.org"}
但我是否使用 $ form-> handleRequest($ request)或 $ form->提交($ data)
$ form-> isValid()始终为false
我希望这很清楚......任何人都可以帮忙吗?
答案 0 :(得分:1)
此问题与CRSF验证有关。您必须为请求该服务的用户禁用它。您可以在config.yml中禁用它。你必须设置这样的东西:
fos_rest:
disable_csrf_role: ROLE_API
此外,您必须提交表单,而不是处理它。以下是它的片段:
$form = $this->createForm(ProjectType::class, $project);
$form->submit($request->request->all());
if ($form->isValid()) {