Maison > développement back-end > tutoriel php > Comment puis-je gérer les erreurs HTTP et récupérer les codes de réponse lors de l'utilisation de « file_get_contents » pour les requêtes POST ?

Comment puis-je gérer les erreurs HTTP et récupérer les codes de réponse lors de l'utilisation de « file_get_contents » pour les requêtes POST ?

Barbara Streisand
Libérer: 2024-12-21 22:48:28
original
341 Les gens l'ont consulté

How Can I Handle HTTP Errors and Retrieve Response Codes When Using `file_get_contents` for POST Requests?

Requêtes HTTP avec file_get_contents : récupération des codes de réponse

Lors de l'envoi de requêtes POST à ​​l'aide de file_get_contents et stream_context_create, la gestion des erreurs peut être difficile. L'extrait de code fourni démontre les bases des requêtes POST avec file_get_contents, mais il souffre de deux limitations :

  • Il affiche un avertissement d'erreur lorsqu'une erreur HTTP se produit.
  • Il ne fournit aucun moyen pour obtenir le code d'erreur HTTP.

Pour remédier à ces limitations, tenez compte des éléments suivants solutions :

Suppression des avertissements d'erreur

Pour supprimer l'avertissement indésirable, vous pouvez utiliser l'option 'ignore_errors' dans le contexte du flux :

$context = stream_context_create(['http' => ['ignore_errors' => true]]);
Copier après la connexion

En activant cette option, file_get_contents n'affichera pas d'avertissement d'erreur sur les erreurs HTTP et renverra à la place une valeur « fausse », indiquant un échec. request.

Récupération des codes de réponse HTTP

Pour obtenir le code de réponse HTTP, vous pouvez utiliser la variable superglobale PHP $http_response_header, qui est renseignée lors de l'utilisation de file_get_contents avec un flux contexte. Après avoir supprimé l'avertissement d'erreur, vous pouvez accéder au code de réponse en utilisant le code suivant :

$result = file_get_contents("http://example.com", false, $context);
var_dump($http_response_header);
Copier après la connexion

Cela affichera les en-têtes de réponse HTTP, y compris le code de réponse.

En implémentant Ces solutions, vous pouvez améliorer la capacité de votre code à gérer les erreurs HTTP tout en effectuant des requêtes POST à ​​l'aide de file_get_contents et stream_context_create.

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!

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