Skip to content

Commit 08b40a0

Browse files
committed
feat(cache): added server cache with browser cache
1 parent a16ffe8 commit 08b40a0

File tree

2 files changed

+31
-1
lines changed

2 files changed

+31
-1
lines changed

app/Http/Kernel.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,8 @@ class Kernel extends HttpKernel
3939
],
4040

4141
'api' => [
42+
\App\Http\Middleware\CacheMiddleware::class,
4243
// \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
43-
'throttle:api',
4444
\Illuminate\Routing\Middleware\SubstituteBindings::class,
4545
],
4646
];
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
3+
namespace App\Http\Middleware;
4+
5+
use Closure;
6+
use Illuminate\Http\Request;
7+
use Illuminate\Support\Facades\Cache;
8+
9+
class CacheMiddleware
10+
{
11+
/**
12+
* Handle an incoming request.
13+
*
14+
* @param \Illuminate\Http\Request $request
15+
* @param \Closure(\Illuminate\Http\Request): (\Illuminate\Http\Response|\Illuminate\Http\RedirectResponse) $next
16+
* @return \Illuminate\Http\Response|\Illuminate\Http\RedirectResponse
17+
*/
18+
public function handle(Request $request, Closure $next)
19+
{
20+
$key = md5($request->fullUrl());
21+
if (! Cache::has($key)) {
22+
$value = $next($request)->withHeaders([
23+
'Cache-Control' => 'max-age=2592000, public',
24+
]);
25+
Cache::put($key, $value);
26+
}
27+
28+
return Cache::get($key);
29+
}
30+
}

0 commit comments

Comments
 (0)