Maison >développement back-end >tutoriel php >Pourquoi les données Axios POST ne sont-elles pas accessibles dans $_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 vous 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 supportés nativement par les formulaires HTML :
Pour envoyer les données au format souhaité, vous avez plusieurs options :
Vous pouvez également personnaliser votre configuration PHP pour gérer les données JSON comme suggéré dans une autre question connexe.
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!