alextartan/guzzle-psr18-adapter

Lightweight wrapper over Guzzle to comply with PSR18

4.0.4 2021-01-01 00:13 UTC

This package is auto-updated.

Last update: 2021-01-01 00:15:52 UTC


README

Guzzle Adapter for PSR-18

Wrapper over Guzzle to comply with PSR-18

Current build status

CI codecov Infection MSI Downloads

Install

The easiest way is to use composer:

composer require alextartan/guzzle-psr18-adapter

Note: requires PHP >= 7.2

Usage

Example:

<?php

use Psr\Http\Client\ClientInterface;
use Psr\Http\Client\ClientExceptionInterface;
use Psr\Http\Client\NetworkExceptionInterface;
use Psr\Http\Client\RequestExceptionInterface;
use GuzzleHttp\Psr7\Request;

[...]

public function sendSomething(ClientInterface $client, $data)
{
    // Using GuzzleHttp\Psr7\Request in this example, but any implementation of PSR-7 will do
    $request = new Request('GET', 'https://some-domain.com/something');
    try{
        // response is also an implementation of PSR-7 (Psr\Http\Message\ResponseInterface)
        $response = $client->sendRequest($request)
    } catch(ClientException $e){
        // do something
    } catch(NetworkException $e){
        // do something
    } catch(RequestException $e){
        // do something
    }
}

[...]

Issues and pull requests.

Any issues found should be reported in this repository issue tracker, issues will be fixed when possible. Pull requests will be accepted, but please adhere to the PSR2 coding standard. All builds must pass in order to merge the PR.