Abrufen der gesamten XML-Antwort der Körper mit Guzzle HTTP-Client 6

Ich wollte Saufen, 6 rufen Sie eine xml-Antwort von einer remote-API. Das ist mein code:

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

Vardumping die $body zurückkehren würde eine GuzzleHttp\Psr7\Stream Objekt:

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

Konnte ich dann anrufen $body->read(1024) zu Lesen 1024 bytes der Antwort (die Lesen in xml).

Möchte ich jedoch, dass das abrufen des gesamten XML-Antwort von meiner Anfrage, da muss ich analysieren Sie später mit der SimpleXML Erweiterung.

Wie kann ich am besten abrufen der XML-Antwort von GuzzleHttp\Psr7\Stream Objekt so, dass es nutzbar ist für die Analyse?

Würden die while Schleife den Weg zu gehen?

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

Ich würde schätzen Ihre Beratung.

InformationsquelleAutor luqo33 | 2015-08-03
Schreibe einen Kommentar