From 2e6e2967152059d7324f9b5105dd3dbf4b1b04cc Mon Sep 17 00:00:00 2001 From: Shift Date: Sat, 7 Jan 2023 20:33:06 +0000 Subject: [PATCH] Shift service providers --- app/Providers/EventServiceProvider.php | 1 - app/Providers/RouteServiceProvider.php | 40 ++++++++++++++++---------- 2 files changed, 25 insertions(+), 16 deletions(-) diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index fbdecb89a..365acc486 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -25,7 +25,6 @@ class EventServiceProvider extends ServiceProvider */ public function boot() { - parent::boot(); // } diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index c6b081527..d16825539 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -2,6 +2,9 @@ namespace App\Providers; +use Illuminate\Support\Facades\RateLimiter; +use Illuminate\Http\Request; +use Illuminate\Cache\RateLimiting\Limit; use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider; use Illuminate\Support\Facades\Route; @@ -30,23 +33,18 @@ class RouteServiceProvider extends ServiceProvider */ public function boot() { - // - parent::boot(); + $this->configureRateLimiting(); + + $this->routes(function () { + $this->mapApiRoutes(); + $this->mapWebRoutes(); + $this->mapInstallerRoutes(); + $this->mapUpdateRoutes(); + // + }); } - /** - * Define the routes for the application. - * - * @return void - */ - public function map() - { - $this->mapApiRoutes(); - $this->mapWebRoutes(); - $this->mapInstallerRoutes(); - $this->mapUpdateRoutes(); - // - } + /** * Define the "web" routes for the application. @@ -117,4 +115,16 @@ class RouteServiceProvider extends ServiceProvider require base_path('routes/update.php'); }); } + + /** + * Configure the rate limiters for the application. + * + * @return void + */ + protected function configureRateLimiting() + { + RateLimiter::for('api', function (Request $request) { + return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip()); + }); + } }