FOSRestBundle 无法找到模板,无法 return json

FOSRestBundle Unable to find template, can't return json

我不想使用 FOSRestBundle 来 return json 来自 api 的响应,但是 FOSRestBundle 想要 return twig 而不是 json。

我的控制器方法如下所示

/**
 * @Rest\Post("/producers-from-points",name="get-producers-from-points",options={"expose"=true})
 * @Rest\View(serializerGroups={"list"}, statusCode=200)
 *
 * @return \FOS\RestBundle\View\View
 * @throws \Exception
 */
public function getProducersFromPointsAction()
{
    $json = parent::getJsonFromRequest();
    if($json===false){
        throw new \Exception("");
    }

    /** @var EntityManager $em */
    $em = $this->getDoctrine()->getManager();

    $poss = $em->getRepository('AppBundle:PointOfSale')->getPointOfSalesByAroundPoints($json->points);

    return ['pointsOfSales'=>$poss];
}

config.yml

fos_rest:
  routing_loader:
    default_format: json
    include_format: false
  param_fetcher_listener: true
  body_listener:          true
  format_listener:        false
  view:
    view_response_listener: 'force'
  exception:
    messages:
        'Exception': true

尝试将 view_reponse_listener 设置为 "false" 而不是 "force"。

看看这里可以更好地理解 view_reponse_listener 是什么: http://symfony.com/doc/current/bundles/FOSRestBundle/3-listener-support.html