Maison >développement back-end >tutoriel php >Comment envoyer des données JSON via une requête POST à ​​l'aide de PHP cURL ?

Comment envoyer des données JSON via une requête POST à ​​l'aide de PHP cURL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-17 14:16:02933parcourir

How to Send JSON Data via POST Request using PHP cURL?

POSTing de données JSON avec PHP

Cette enquête vise à obtenir des conseils sur l'envoi de données JSON via une requête POST en PHP. L'extrait de code suivant montre comment y parvenir à l'aide de CURL :

<?php

$url = "http://domain/OnLeagueRest/resources/onleague/Account/CreditAccount";
$data = json_encode([
    'userID' => 'a7664093-502e-4d2b-bf30-25a2b26d6021',
    'itemKind' => 0,
    'value' => 1,
    'description' => 'Saude',
    'itemID' => '03e76d0a-8bab-11e0-8250-000c29b481aa'
]);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,
        array("Content-type: application/json"));
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

$response = curl_exec($ch);

$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);

if ( $status != 201 ) {
    die("Error: call to URL $url failed with status $status, response $response, curl_error " . curl_error($ch) . ", curl_errno " . curl_errno($ch));
}

curl_close($ch);

$response = json_decode($response, true);

?>

Dans cet exemple, $url représente l'URL cible et $data contient les données JSON qui seront publiées. La fonction curl_init() lance la session CURL et les appels curl_setopt() suivants définissent les options nécessaires. La fonction curl_exec() envoie la requête et renvoie la réponse du serveur, qui est ensuite traitée et décodée selon les besoins.

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