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
233 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!

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