aboutsummaryrefslogtreecommitdiff
path: root/app/Http/Middleware/RateLimiter.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Http/Middleware/RateLimiter.php')
-rw-r--r--app/Http/Middleware/RateLimiter.php35
1 files changed, 0 insertions, 35 deletions
diff --git a/app/Http/Middleware/RateLimiter.php b/app/Http/Middleware/RateLimiter.php
deleted file mode 100644
index 821868f..0000000
--- a/app/Http/Middleware/RateLimiter.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-namespace App\Http\Middleware;
-
-use Closure;
-use Illuminate\Http\Request;
-use Illuminate\Support\Facades\Cache;
-use Symfony\Component\HttpFoundation\Response;
-
-class RateLimiter
-{
- /**
- * Handle an incoming request.
- *
- * @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
- */
- public function handle(Request $request, Closure $next): Response
- {
- if (auth()->check()) {
- return $next($request);
- }
- $ipAddress = $request->ip();
- $cacheKey = 'rate_limit_'.$ipAddress;
-
- if (Cache::has($cacheKey)) {
- // If the cache key exists, the IP has submitted an entry within the last hour.
- return response()->view('errors.guestbook-ratelimit', [], 429);
- }
-
- // Add the IP address to the cache and set the expiration time to one hour.
- Cache::put($cacheKey, true, 3600);
-
- return $next($request);
- }
-}