Dokumentácia Guzzle
Guzzle je klient HTTP jazyka PHP, ktorý umožňuje jednoduché odosielanie požiadaviek HTTP a triviálnu integráciu s webovými službami.
- Jednoduché rozhranie na vytváranie dotazovacích reťazcov, POST požiadaviek, streamovanie veľkých
odosielanie, streamovanie veľkých sťahovaní, používanie súborov cookie HTTP, odosielanie údajov JSON,
atď...
- Môže posielať synchrónne aj asynchrónne požiadavky pomocou toho istého rozhrania.
- Používa rozhrania PSR-7 pre požiadavky, odpovede a prúdy. To vám umožňuje
používať iné knižnice kompatibilné s PSR-7 s Guzzle.
- abstrahuje základný transport HTTP, čo vám umožňuje písať
kód, ktorý nie je závislý od prostredia a transportu, t. j. žiadna závislosť od cURL,
PHP, socketov alebo neblokujúcich slučiek udalostí.
- Middleware systém umožňuje rozšíriť a skomponovať správanie klienta.
$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();