Détecter les exceptions de Guzzle
Introduction
Lors du test des API à l'aide de Guzzle, la gestion des exceptions est crucial pour garantir un rapport d’erreurs fiable et informatif. Cependant, détecter les exceptions dans Guzzle peut parfois s'avérer difficile, car des erreurs d'exception non gérées peuvent persister.
Guzzle 3
Pour détecter les exceptions de Guzzle, suivez ces étapes :
Dépannage
Si vous rencontrez toujours des erreurs d'exception non gérées, essayez de désactiver les exceptions pour Guzzle en modifiant le processus de création de client. Pour Guzzle 3 :
$client = new \Guzzle\Http\Client($httpBase, array( 'request.options' => array( 'exceptions' => false, ) ));
Cela vous permettra de récupérer tous les codes d'état HTTP sans lever d'exceptions.
Guzzle 5.3 et Guzzle 6
Pour Guzzle 5.3 et Guzzle 6, la procédure est légèrement différente :
Guzzle 5.3 :
$client = new \GuzzleHttp\Client(['defaults' => [ 'exceptions' => false ]] );
Guzzle 6 :
$client = new \GuzzleHttp\Client(['http_errors' => false]);
Gestion des codes de réponse HTTP
Une fois les exceptions désactivées, vous pouvez utiliser l'objet de réponse Méthode getStatusCode() pour récupérer le code de réponse HTTP. Gérez les codes attendus en conséquence, par exemple 200 pour succès, 304 pour aucun changement ou 404 pour non trouvé. Si un code inattendu est rencontré, envisagez de lancer une exception personnalisée.
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!