Php Can';无法获取POST数据,因为它';它总是空的

Php Can';无法获取POST数据,因为它';它总是空的,php,angular,symfony,symfony-2.8,Php,Angular,Symfony,Symfony 2.8,当我试图在Symfony 2.8中获取POST数据时,我总是得到null。我用一个角度服务打电话,像这样: this.http.post(`****/app/relation/saveEmployeeWorkHours`, JSON.stringify({workHours})); 如下所示,我发送的数据的有效负载是可见的: 在我的路线中,我有: app_addEmployeeDays: path: /app/relation/saveEmployeeWorkHours.{_format

当我试图在Symfony 2.8中获取POST数据时,我总是得到
null
。我用一个角度服务打电话,像这样:

this.http.post(`****/app/relation/saveEmployeeWorkHours`, JSON.stringify({workHours}));
如下所示,我发送的数据的有效负载是可见的:

在我的路线中,我有:

app_addEmployeeDays:
  path: /app/relation/saveEmployeeWorkHours.{_format}
  defaults: { _controller: CompoRelationBundle:Api\Relation:saveEmployeeWorkHours, _format: 'json' }
  requirements:
    _method : POST
在$request中的操作中,我为
POST
获取了
null
,但我确实获得了在URL中发送的get参数(用于调试):


您在请求主体中发送数据/有效负载,而不是作为单个参数

您需要访问
request->all()
检索查询和post参数,而不是正文

您需要执行以下操作:

$body     = $request->getContent();
$response = json_encode($body);
// etc
$body     = $request->getContent();
$response = json_encode($body);
// etc