klimis/cachemiddleware

Cache Laravel controllers' response

2.0.3 2022-04-14 18:17 UTC

README

Cache Middleware

(For Laravel Controllers)

Build Status Generic badge Generic badge

Installation

Composer:

  1. "klimis/cachemiddleware": "^1.0"
  2. Register in Kernel.php. Eg 'cache' => \Klimis\CacheMiddleware\Middleware\CacheMiddleware::class

Usage

  • Set methods to be cached in Controllers. Add to any controller public $cache = ['getPage']; to cache forever or public $cache = ['getPage' => 60] ; for cache with timeout
  • Use header Api-Disable-Cache = 1 to force disable cache for request
  • Check response header X-Is-From-Coin-Cache to check if response is coming from cache
  • Set env DISABLE_CACHE to true to disable all cache
  • 1.3.1
  • Added cacheExceptions eg public $cacheExceptions = [ 'getPage' => [ "page_type" => ["data-hub-explorer","test"] ] ];. Works for page_type only at the moment
TODO
  • Move controller methods to middleware.
  • More Unit test
  • Create job for cleaning cache
  • Hash key