FOSRestController-如何在特定视图/控制器响应上使用驼峰大小写作为命名策略?

时间:2019-02-13 12:42:40

标签: symfony fosrestbundle jmsserializerbundle

我正在使用Symfony 3.4FOSRestBundle 2.5.0JMSSerializer 2.1.0JMSSerializerBundle 3.1.0

创建JSON响应的默认命名策略似乎使用下划线:

MyController类扩展了AbstractFOSRestController {

  public function someAction(Request $request) {
     $data = $someThirdPartyService->getThirdPartyObject();         
     $data->setSomeProperty('value');

     $view = $this->view($data, 200);
     $return $this->handleView($view);
  }

  // JSON
  {
      'some_property' : 'value    <== lowercase underscore naming
  }

}

这在我的整个项目中都能正常工作。但是,当与第三方Web服务通信时,我需要改用CamelCase。由于响应数据对象是由第三方库创建的,因此我无法更改其来源(例如,将@JMS\SerializedName添加到属性中)。

我知道我可以在parameters.yml文件中更改命名策略,但这会影响并更改整个项目中的策略吗?

是否可以通过某种方式为特定的控制器,动作或视图指定策略?

0 个答案:

没有答案