Blame view

app/Providers/RouteServiceProvider.php 1.33 KB
02a1ed535   Андрей Ларионов   Первый коммит Rek...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  <?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 the "home" route for your application.
       *
       * Typically, users are redirected here after authentication.
       *
       * @var string
       */
      public const HOME = '/home';
6a962b009   Андрей Ларионов   Система авторизац...
21
      public const LOGIN = '/login';
02a1ed535   Андрей Ларионов   Первый коммит Rek...
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
      /**
       * Define your route model bindings, pattern filters, and other route configuration.
       *
       * @return void
       */
      public function boot()
      {
          $this->configureRateLimiting();
  
          $this->routes(function () {
              Route::middleware('api')
                  ->prefix('api')
                  ->group(base_path('routes/api.php'));
  
              Route::middleware('web')
                  ->group(base_path('routes/web.php'));
          });
      }
  
      /**
       * Configure the rate limiters for the application.
       *
       * @return void
       */
      protected function configureRateLimiting()
      {
          RateLimiter::for('api', function (Request $request) {
              return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip());
          });
      }
  }