API POST-parametreilla PHP:ssä
API-parametreja voidaan välittää ei vain GET-metodilla, vaan myös POST-metodilla. Katsotaanpa, kuinka se tehdään. Oletetaan, että API:mme odottaa dataa POST-metodilla:
<?php
echo mt_rand($_POST['num1'], $_POST['num2']);
?>
Tehdäänpyyntö tähän API:hin. Tätä varten tarvitsemme cURL-kirjaston. Tehdään POST-pyyntö sen avulla:
<?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);
$data = ['num1'=>'1', 'num2'=>'100'];
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$res = curl_exec($curl);
var_dump($res);
?>
Tee API, joka POST-datana vastaanottaa eläinmerkin ja päivämäärän, ja palauttaa horoskoopin kyseiselle eläinmerkkille annettuna päivämääränä.