tomhart / laravel-resilient-http-client
Laravel Resilient Http Client
1.0.0
2019-12-01 20:48 UTC
Requires
- php: ^7.2
- guzzlehttp/guzzle: ^6.4
- illuminate/support: ~5.5.0|~5.6.0|~5.7.0|~5.8.0|^6.0
Requires (Dev)
- orchestra/testbench: ^3.8 || ^4.0
- phpunit/phpunit: ^8.0
This package is auto-updated.
Last update: 2025-03-29 01:01:08 UTC
README
This library allows you to make HTTP requests with built in cache resiliency.
The client simply wraps around Guzzle's request
method, so it
you already use that, this will be very easy to implement into your app.
Usage
use TomHart\HttpClient\Contracts\ResilientClientInterface;
$client = app(ResilientClientInterface::class);
$response = $client->request('GET', '/url');
You can publish the config-file with:
php artisan vendor:publish --provider="TomHart\HttpClient\ResilientServiceProvider" --tag="config"
Caching
This library utilises 2 different caches, one short term cache, and one longer term cache.
The short term cache is used every time you call request
. If the short term cache is a miss, and the HTTP request
fails, it will only then look into the long term cache.
Config Options
Config Item | Usage | Default |
---|---|---|
cache_time |
What TTL (seconds) to use for the short term cache | 60 |
fallback_cache_time |
What TTL (seconds) to use for the long term cache | 3600 |