Documentație Guzzle
Guzzle este un client HTTP PHP care facilitează trimiterea de cereri HTTP și facilitează integrarea cu serviciile web.
- Interfață simplă pentru construirea de șiruri de interogare, cereri POST, streaming mare
încărcări mari, descărcări mari, utilizarea cookie-urilor HTTP, încărcarea de date JSON,
etc...
- Poate trimite atât cereri sincrone, cât și cereri asincrone folosind aceeași interfață.
- Folosește interfețe PSR-7 pentru cereri, răspunsuri și fluxuri. Acest lucru vă permite
de a utiliza alte biblioteci compatibile PSR-7 cu Guzzle.
- Abstrage transportul HTTP de bază, permițându-vă să scrieți
un cod agnostic mediului și transportului; de exemplu, nu există o dependență puternică de cURL,
fluxuri PHP, socket-uri sau bucle de evenimente care nu blochează.
- Sistemul middleware vă permite să măriți și să compuneți comportamentul clientului.
$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();