我正在尝试创建一个使用注释配置Response
的侦听器,并将响应内容设置为控制器返回。
控制器代码:
use PmtVct\PhotoBookBundle\Annotations\ResponseType;
use Symfony\Component\HttpFoundation\Request;
/**
* @ResponseType("JSON")
*/
public function home(Request $request) {
return ['asdf' => 123];
}
但我收到了The controller must return a response
'错误。
有一种方法可以在Controller
而不是Response
上返回数组吗?
答案 0 :(得分:2)
你正试图对FOSRestBundle做类似的事情。也许考虑使用这个捆绑?它将允许:
如果您仍想自己构建此类监听器 - 请查看它在FOSRestBundle中的完成情况 - https://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/EventListener/ViewResponseListener.php - 他们正在使用" kernel.view&#34 ;事件
答案 1 :(得分:0)
根据the documentation,你可以像这样返回一个JsonResponse:
return new JsonResponse(['asdf' => 123]);