Maison >développement back-end >tutoriel php >Comment POSTER correctement des données JSON à l'aide de PHP cURL ?
Cette question aborde le problème de la publication de données JSON à l'aide de la bibliothèque cURL de PHP. L'utilisateur fournit un extrait de code visant à envoyer des données POST vers une URL spécifique. Cependant, le code ne parvient pas à récupérer les données publiées sur la page de réception, ce qui entraîne un tableau vide.
Le problème réside dans la manière incorrecte dont les données JSON sont publiées. De plus, le code utilise print_r($_POST) pour récupérer les données postées, ce qui n'est pas la méthode recommandée.
Pour poster correctement les données JSON à l'aide de cURL, il est essentiel de s'assurer que les données sont correctement codées en JSON. Dans l'extrait de code donné, seule la valeur du champ POST « client » est codée en JSON. Au lieu de cela, l'intégralité des données POST doit être codée en JSON.
De plus, pour récupérer les données publiées sur la page de réception, vous pouvez utiliser la fonction file_get_contents("php://input"), qui contiendra le publié des données JSON.
Voici un exemple de la façon de publier correctement des données JSON avec PHP cURL :
<?php $url = 'url_to_post'; $data = [ "first_name" => "First name", "last_name" => "last name", "email" => "email@example.com", "addresses" => [ "address1" => "some address", "city" => "city", "country" => "CA", "first_name" => "Mother", "last_name" => "Lastnameson", "phone" => "555-1212", "province" => "ON", "zip" => "123 ABC", ], ]; $data_string = json_encode($data); $ch = curl_init($url); # Setup request to send json via POST. curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type:application/json']); # Return response instead of printing. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); # Send request. $result = curl_exec($ch); curl_close($ch); # Print response. echo "<pre class="brush:php;toolbar:false">$result"; ?>
De plus, l'utilisateur exprime son intention d'implémenter REST en utilisant JSON conformément aux spécifications de l'API de Shopify. Il convient de mentionner que l'utilisation d'une bibliothèque tierce spécialement conçue pour s'interfacer avec l'API Shopify est fortement recommandée car elle peut simplifier le processus et réduire les erreurs potentielles.
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!