From d32f5e1aeac6dfeb39b94302588103f88c7531f1 Mon Sep 17 00:00:00 2001 From: James Brooks Date: Tue, 19 Feb 2019 07:27:44 +0000 Subject: [PATCH] Add Cache Control middleware for #3479 --- app/Http/Kernel.php | 2 ++ app/Http/Middleware/CacheControl.php | 36 ++++++++++++++++++++++++++++ app/Http/Routes/ApiSystemRoutes.php | 2 +- 3 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 app/Http/Middleware/CacheControl.php diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index cc9e60b8..df30b79e 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -15,6 +15,7 @@ use Barryvdh\Cors\HandleCors; use CachetHQ\Cachet\Http\Middleware\Admin; use CachetHQ\Cachet\Http\Middleware\ApiAuthentication; use CachetHQ\Cachet\Http\Middleware\Authenticate; +use CachetHQ\Cachet\Http\Middleware\CacheControl; use CachetHQ\Cachet\Http\Middleware\Localize; use CachetHQ\Cachet\Http\Middleware\ReadyForUse; use CachetHQ\Cachet\Http\Middleware\RedirectIfAuthenticated; @@ -47,6 +48,7 @@ class Kernel extends HttpKernel 'admin' => Admin::class, 'can' => Authorize::class, 'cors' => HandleCors::class, + 'cache' => CacheControl::class, 'auth' => Authenticate::class, 'auth.api' => ApiAuthentication::class, 'guest' => RedirectIfAuthenticated::class, diff --git a/app/Http/Middleware/CacheControl.php b/app/Http/Middleware/CacheControl.php new file mode 100644 index 00000000..f6b6b3fa --- /dev/null +++ b/app/Http/Middleware/CacheControl.php @@ -0,0 +1,36 @@ +header('Cache-Control', 'public,max-age='.$maxAge); + + return $response; + } +} diff --git a/app/Http/Routes/ApiSystemRoutes.php b/app/Http/Routes/ApiSystemRoutes.php index 80899f71..92a7aa2e 100644 --- a/app/Http/Routes/ApiSystemRoutes.php +++ b/app/Http/Routes/ApiSystemRoutes.php @@ -43,7 +43,7 @@ class ApiSystemRoutes $router->group(['middleware' => ['auth.api']], function (Registrar $router) { $router->get('ping', 'GeneralController@ping'); $router->get('version', 'GeneralController@version'); - $router->get('status', 'GeneralController@status'); + $router->get('status', ['uses' => 'GeneralController@status', 'middleware' => ['cache']]); }); }); }