I'm a big fan of Guzzle it's great for making API calls.
My typical code when making calls looks like this:
use GuzzleHttp\Client;
use Exception;
try {
$client = new Client;
$response = $client->post($url, ['form_params' => $params]);
return json_decode($response->getBody()->getContents(), true);
} catch (Exception $e) {
return $e->getMessage();
}
That all works but when there is an error returned from the API the errors are truncated. Calling the usually $e->getMessage is not the correct way with Guzzle instead throw an exception with the same response call used for returned data.
throw new Exception($e->getResponse()->getBody()->getContents());
Subscribe to my newsletter for the latest updates on my books and digital products.
Find posts, tutorials, and resources quickly.
Subscribe to my newsletter for the latest updates on my books and digital products.