1

symfonyとdrupal8を楽しむのはこれが初めてですので、私の質問が非常に明白な場合は失礼します。

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",....]}

これらのヘッダーをどのように取り除きますか?

私はここでリファレンスを読むことに固執しています。

ヒントは大歓迎です。

4

1 に答える 1

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でこれを適切に行う方法がわかりません。ヒントをいただければ幸いです。

于 2012-07-18T08:23:55.290 に答える