Maison > développement back-end > tutoriel php > Comment récupérer efficacement le corps de réponse dans Guzzle 6 ?

Comment récupérer efficacement le corps de réponse dans Guzzle 6 ?

Barbara Streisand
Libérer: 2024-11-28 13:54:14
original
624 Les gens l'ont consulté

How to Efficiently Retrieve the Response Body in Guzzle 6?

Récupérer le corps d'une réponse dans Guzzle 6

Lorsque vous travaillez avec Guzzle, le corps d'une réponse est stocké dans un flux. Pour le récupérer, il existe deux approches courantes.

Utilisation de PHP Casting Operator

<br>$contents = (string) $response-> getBody();<br>

Cette opération lira tous les données du début à la fin du flux. Les appels suivants à getBody()->getContents() renverront une chaîne vide.

Utilisation de getBody()->getContents()

$contents = $response->getBody()->getContents();
Copier après la connexion

Avec getContents(), il renvoie uniquement le contenu restant du flux. Si vous l'appelez deux fois sans rechercher la position en utilisant rewind() ou seek(), il renverra une chaîne vide.

Exemple

Utilisation de (string) :

$contents = (string) $response->getBody();
echo $contents; // Prints entire response body
$contents = (string) $response->getBody();
echo $contents; // Empty string, as data has already been consumed
Copier après la connexion

Utilisation getContents() :

$stream = $response->getBody();
$contents = $stream->getContents(); // Prints entire response body
$contents = $stream->getContents(); // Empty string, as data has not been reset
$stream->rewind(); // Reset stream
$contents = $stream->getContents(); // Prints entire response body
Copier après la connexion

Conclusion

Les deux approches récupèrent le corps de la réponse. Choisissez la méthode en fonction de vos besoins spécifiques, par exemple si vous devez lire les données une seule ou plusieurs fois.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal