Guzzle Documentatie

Guzzle is een PHP HTTP client die het eenvoudig maakt om HTTP verzoeken te versturen en te integreren met web services.

  • Eenvoudige interface voor het maken van query strings, POST verzoeken, streamen van grote uploads, streamen van grote downloads, gebruik van HTTP cookies, uploaden van JSON data, etc...
  • Kan zowel synchrone als asynchrone verzoeken verzenden met gebruikmaking van dezelfde interface.
  • Gebruikt PSR-7 interfaces voor verzoeken, antwoorden, en stromen. Hierdoor kunt u om andere PSR-7 compatibele bibliotheken te gebruiken met Guzzle.
  • Haalt het onderliggende HTTP transport weg, waardoor je omgeving en transport agnostische code te schrijven; dat wil zeggen, geen harde afhankelijkheid van cURL, PHP streams, sockets, of non-blocking event loops.
  • Middleware systeem maakt het mogelijk het gedrag van de cliënt te vergroten en samen te stellen.
$client = new GuzzleHttp\Client();
$res = $client->request('GET', 'https://api.github.com/user', [
    'auth' => ['user', 'pass']
]);
echo $res->getStatusCode();
// "200"
echo $res->getHeader('content-type')[0];
// 'application/json; charset=utf8'
echo $res->getBody();
// {"type":"User"...'

// Send an asynchronous request.
$request = new \GuzzleHttp\Psr7\Request('GET', 'http://httpbin.org');
$promise = $client->sendAsync($request)->then(function ($response) {
    echo 'I completed! ' . $response->getBody();
});
$promise->wait();