Publication de JSON sur PHP à l'aide de curl : dévoilement du lien manquant
Lorsque vous essayez d'utiliser la commande curl post pour la transmission de données JSON en PHP, on peut rencontrer le problème d'un tableau vide comme interprétation PHP des données POST. Pour résoudre ce problème, le secret réside dans la modification de la structure des commandes.
Résoudre la mauvaise interprétation
Par défaut, le paramètre -d dans curl attend des données codées sous forme de formulaire. Pour demander à PHP d'interpréter correctement le contenu JSON, le paramètre -H doit être introduit. La syntaxe correcte de la commande est la suivante :
curl -v -H "Content-Type: application/json" -X POST -d '{"screencast":{"subject":"tools"}}' \ http://localhost:3570/index.php/trainingServer/screencast.json
En précisant "Content-Type: application/json" dans le paramètre -H, on informe PHP que les données POST sont au format JSON. Cela permet à PHP d'analyser et de gérer correctement l'objet JSON et d'attribuer la valeur "tools" à la propriété "subject".
Exemple de réponse
Lors de l'exécution de la commande modifiée , la réponse du serveur PHP reflétera désormais les données JSON correctement interprétées, supprimant ainsi le problème d'un tableau vide :
HTTP/1.1 200 OK Date: Fri, 01 May 2009 22:03:00 GMT Server: Apache/2.2.8 (Win32) PHP/5.2.6 Content-Type: application/json; charset=utf-8 { "screencast": { "id": null, "subject": "tools", "body": null, "dataUrl": null, "dataMedium": null, "createdOn": null, "author": null } }
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!