"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Pourquoi les données Axios POST ne sont-elles pas accessibles dans $_POST ?

Pourquoi les données Axios POST ne sont-elles pas accessibles dans $_POST ?

Publié le 2024-11-08
Parcourir:648

Why is Axios POST Data not Accessible in $_POST?

Paramètres de publication Axios non lus par $_POST

Vous publiez des données sur un point de terminaison PHP à l'aide d'Axios et espérez y accéder en $ _POST ou $_REQUEST. Cependant, vous ne parvenez actuellement pas à le détecter.

À l'origine, vous avez utilisé la méthode axios.post par défaut, mais vous êtes passé à l'extrait de code fourni en raison d'un problème d'en-tête suspecté. Malgré ce changement, les données restent indétectables.

Après une enquête plus approfondie, vous avez réalisé qu'Axios publie les données en tant qu'objet JSON, accessible via file_get_contents("php://input"). Votre objectif est d'envoyer les données sous forme de chaîne normale.

Solution :

Selon la documentation d'Axios, le comportement par défaut consiste à sérialiser les objets JavaScript en JSON pour les publier. . Cependant, PHP ne prend pas en charge JSON comme format de données pour remplir $_POST. Il ne prend en charge que les formats pris en charge nativement par les formulaires HTML :

  • application/x-www-form-urlencoded
  • multipart/form-data

Pour Pour envoyer les données au format souhaité, vous disposez de plusieurs options :

  • Utiliser l'API URLSearchParams (dans un navigateur)
  • Utiliser la bibliothèque qs pour encoder les données

Vous pouvez également personnaliser votre configuration PHP pour gérer les données JSON comme suggéré dans une autre question connexe.

Déclaration de sortie Cet article est reproduit le: 1729607537 S'il y a une contrefaçon, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3