Maison  >  Article  >  développement back-end  >  Pourquoi mes données JSON arrivent-elles sous forme de tableau vide en PHP après un cURL POST ?

Pourquoi mes données JSON arrivent-elles sous forme de tableau vide en PHP après un cURL POST ?

DDD
DDDoriginal
2024-11-19 18:01:02259parcourir

Why is my JSON data arriving as an empty array in PHP after a cURL POST?

Comment interpréter correctement les données JSON publiées sur PHP avec cURL

Dans votre tentative de publication de données JSON sur un backend PHP à l'aide de cURL, vous a rencontré un problème où les données publiées apparaissaient sous la forme d'un tableau vide en PHP. Cette divergence résulte d'une mauvaise compréhension de la façon dont cURL interprète le paramètre -d.

Par défaut, cURL suppose que les données envoyées avec le paramètre -d sont codées sous forme de formulaire. Cependant, dans votre cas, vous envoyez des données JSON. Pour résoudre ce problème, vous devez spécifier l'en-tête Content-Type à l'aide du paramètre -H :

curl -v -H "Content-Type: application/json" -X POST -d '{"screencast":{"subject":"tools"}}' \
http://localhost:3570/index.php/trainingServer/screencast.json

Avec cette modification, cURL enverra correctement les données au format JSON et PHP pourra les analyser correctement. . Par conséquent, vous devez vous attendre à recevoir une réponse valide incluant les données JSON traitées.

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:
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