API met POST parameters in JSON-formaat in PHP
Het gebeurt dat parameters arrays zijn. In dat geval moeten dergelijke parameters worden verpakt in JSON. Laten we een voorbeeld bekijken. Stel dat we de volgende API hebben, die een array in JSON-formaat verwacht en de som van de elementen van deze array teruggeeft:
<?php
echo array_sum(json_decode($_POST['json'], true));
?>
Laten we een verzoek doen naar deze API:
<?php
$url = 'http://api.loc/index.php';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
$arr = [1, 2, 3, 4, 5];
$json = json_encode($arr);
$data = ['json' => $json];
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$res = curl_exec($curl);
var_dump($res);
?>
Maak een API dat als parameter een array met datums accepteert, en een array met historische gebeurtenissen teruggeeft die op de doorgegeven datums hebben plaatsgevonden.