Json :: decode返回NULL

时间:2017-04-25 11:22:25

标签: json drupal guzzle drupal-8 guzzlehttp

我对Json::decode有疑问。我使用此代码:

use Drupal\Component\Serialization\Json;

$client = \Drupal::httpClient();
$request = $client->post($rest_url, [
        'form_params' => [
          'id' => $rest_id,
        ],
      ]);
      $response = Json::decode($request->getBody());

从某个服务器获取JSON,但它返回NULL。当然,这只是代码的一部分(没有trycatch ...)

$request->getBody()返回没问题,但在Json::decode我仍然没有。

我唯一注意到的是,在Postman中,当我查看原始主体内容时,我在JSON的开头看到一些空行(如键入时键盘返回),但我检查了JSON,因为它在{ {3}}并且它有效。

知道这是什么问题吗?

1 个答案:

答案 0 :(得分:0)

我不熟悉Drupal的JSON序列化程序,但尝试强制将响应正文对话转换为字符串。

$response = Json::decode($request->getBody()->getContents());

Guzzle从getBody()返回一个Stream对象,可能是问题。