A Simple Guzzle Client for a Laravel application
- PHP 7.1 or higher
- Laravel 5.4 or 5.5
Via composer
$ composer require dpc/guzzle-client
After installation, publish the vendor files by running:
php artisan vendor:publish --provider="Dpc\GuzzleClient\GuzzleClientServiceProvider"
This will create a guzzle.php
in the config
directory which will contain:
return [
'base_uri' => '',
];
Inject the contract into the class where you need the client:
protected $client;
/**
* Request constructor.
* @param RequestClientContract $client
*/
public function __construct(RequestClientContract $client)
{
$this->client = $client;
}
You can then use the client by:
$client->send('POST', 'foo/bar',[
'foo' => 'random data'
])->asJson()->json());
The asJson()
method will send the data using json
key in the Guzzle request. (You can use asFormParams()
to send the request as form params).
This package follows semver. Features introduced & any breaking changes created in major releases are mentioned in releases.
This package is created as a basic wrapper for Guzzle based on what I needed in a few projects. If you need any other features of Guzzle, you can create a issue here or send a PR to master branch.
If you need help or have any questions you can:
- Create an issue here
- Send a tweet to @DPC_22
- Email me at [email protected]
- DM me on the larachat slack team (@Dylan DPC)
Copyright (c) 2017 Dylan DPC