Laravel 5 response cache.
Require this package with Composer (Packagist), using the following command:
$ composer require media24si/response-cache
Register the ResponseCacheServiceProvider to the providers array in config/app.php
Media24si\ResponseCache\ResponseCacheServiceProvider::class
Publish vendor files (config file):
$ php artisan vendor:publish
To access cache manager register facade in config/app.php
'ResponseCacheManager' => Media24si\ResponseCache\Facades\ResponseCacheManagerFacade::class
Register middleware as a global in app/Http/Kernel.php
\Media24si\ResponseCache\Http\Middleware\CacheMiddleware::class
To cache response, mark response as public and set max-age (TTL):
return response()->json(['name' => 'John'])
->setPublic()
->setMaxAge(600);
Many times you want to assing tags to URI. With assigned tags it's simple to clear more cached URIs.
To assign tag to caching response, set cache-tags
header. To assign more tags, seperate them with comma (,).
To cache response, mark response as public and set max-age (TTL):
return response()->json(['name' => 'John'])
->setPublic()
->setMaxAge(600)
->header('cache-tags', 'foo,bar,john,doe');
To flush all keys for tag:
ResponseCacheManager::flushTag('foo')
Check responseCache.php
for all possible configurations.
The MIT License (MIT). Please see License File for more information.