Получить весь XML-ответ с помощью HTTP-клиента Guzzle 6

Я хотел использовать Guzzle 6 для получения XML-ответа от удаленного API. Это мой код:

$client = new Client([
    'base_uri' => '<my-data-endpoint>',
]);
$response = $client->get('<URI>', [
    'query' => [
        'token' => '<my-token>',
    ],
    'headers' => [
        'Accept' => 'application/xml'
    ]
]);
$body = $response->getBody();

Вардумпинг$body вернетGuzzleHttp\Psr7\Stream объект:

object(GuzzleHttp\Psr7\Stream)[453] 
private 'stream' => resource(6, stream)
...
...

Я мог бы тогда позвонить$body->read(1024) читать 1024 байта из ответа (который будет читаться в XML).

Тем не менее, я хотел бы получить полный XML-ответ из моего запроса, так как мне нужно будет проанализировать его позже, используяSimpleXML расширение.

Как я могу наилучшим образом получить ответ XML изGuzzleHttp\Psr7\Stream объект, чтобы его можно было использовать для разбора?

Будет лиwhile цикл путь?

while($body->read(1024)) {
    ...
}

Буду признателен за ваш совет.

Ответы на вопрос(2)

Ваш ответ на вопрос