Heim > Backend-Entwicklung > PHP-Tutorial > Wie erhält man effizient Körperinhalte aus einer Guzzle 6 PSR-7-Reaktion?

Wie erhält man effizient Körperinhalte aus einer Guzzle 6 PSR-7-Reaktion?

DDD
Freigeben: 2024-11-30 20:34:17
Original
708 Leute haben es durchsucht

How to Efficiently Get Body Contents from a Guzzle 6 PSR-7 Response?

Körperinhalte aus einer PSR-7-Antwort in Guzzle 6 ermitteln

In Guzzle 6 entsprechen die Antworten dem PSR-7-Standard, der verwendet Streams zum Speichern von Antworttexten. Um den Körperinhalt abzurufen, muss man den Stream abrufen und anschließend seinen Inhalt abrufen.

Methoden zum Abrufen des Körperinhalts:

  • Casting zu String:

    $contents = (string) $response->getBody();
    Nach dem Login kopieren
  • getContents():

    $contents = $response->getBody()->getContents();
    Nach dem Login kopieren

Unterschied zwischen getContents() und Casting:

getContents() gibt das zurück verbleibende Stream-Inhalte. Nachfolgende Aufrufe von getContents() geben eine leere Zeichenfolge zurück, sofern die Stream-Position nicht zurückgesetzt wird. Beim Casting hingegen werden alle Stream-Daten vom Anfang bis zum Ende gelesen.

Beispiel:

$stream = $response->getBody();
$contents = $stream->getContents(); // contents are retrieved
$contents = $stream->getContents(); // returns empty string
$stream->rewind(); // seek the stream back to the beginning
$contents = $stream->getContents(); // contents are retrieved again
Nach dem Login kopieren

Beim Casting in einen String wird ein einzelner Lesevorgang durchgeführt und gibt alle Daten aus dem zurück Stream.

$contents = (string) $response->getBody(); // contents are retrieved
$contents = (string) $response->getBody(); // contents are retrieved again
Nach dem Login kopieren

Dokumentation:

  • https://docs.guzzlephp.org/en/latest/psr7.html#responses

Das obige ist der detaillierte Inhalt vonWie erhält man effizient Körperinhalte aus einer Guzzle 6 PSR-7-Reaktion?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage