aboutsummaryrefslogtreecommitdiff
path: root/app/Providers/RouteServiceProvider.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Providers/RouteServiceProvider.php')
-rw-r--r--app/Providers/RouteServiceProvider.php40
1 files changed, 40 insertions, 0 deletions
diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php
new file mode 100644
index 0000000..1cf5f15
--- /dev/null
+++ b/app/Providers/RouteServiceProvider.php
@@ -0,0 +1,40 @@
+<?php
+
+namespace App\Providers;
+
+use Illuminate\Cache\RateLimiting\Limit;
+use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\RateLimiter;
+use Illuminate\Support\Facades\Route;
+
+class RouteServiceProvider extends ServiceProvider
+{
+ /**
+ * The path to your application's "home" route.
+ *
+ * Typically, users are redirected here after authentication.
+ *
+ * @var string
+ */
+ public const HOME = '/home';
+
+ /**
+ * Define your route model bindings, pattern filters, and other route configuration.
+ */
+ public function boot(): void
+ {
+ RateLimiter::for('api', function (Request $request) {
+ return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip());
+ });
+
+ $this->routes(function () {
+ Route::middleware('api')
+ ->prefix('api')
+ ->group(base_path('routes/api.php'));
+
+ Route::middleware('web')
+ ->group(base_path('routes/web.php'));
+ });
+ }
+}