这是我与Symfony和drupal 8玩耍的第一天,所以如果我的问题非常明显,请原谅。
使用drupal 7:
drupal_json_output(array('products' => array_values($products)));
exit;
json输出是干净的:
{"products":["item_1","item_2",....]}
使用drupal 8:
use Symfony\Component\HttpFoundation\JsonResponse;
// some process
print new JsonResponse(array('products' => array_values($products)));
exit;
用标题输出:
HTTP/1.0 200 OK
Cache-Control: no-cache
Content-Type: application/json
Date: Wed, 18 Jul 2012 07:53:26 GMT
{"products":["item_1","item_2",....]}
你如何摆脱这些标题?
我很难阅读参考资料here。
非常感谢任何提示。
答案 0 :(得分:2)
您只需拨打$response->getContent()
即可获得回复的“内容”。
在你的情况下,你可以做到
use Symfony\Component\HttpFoundation\JsonResponse;
// some process
$response = new JsonResponse(array('products' => array_values($products)));
print $response->getContent();
exit;
但是,请注意,这将是一种不好的做法,因为您将丢失流程中的响应标头,并且不会告诉您,例如,您的响应的内容类型是什么(在这种情况下:“application /” json“)等...
我不知道如何正确地使用drupal,任何提示都表示赞赏。