Blame view

app/Providers/RouteServiceProvider.php 1.32 KB
02a1ed535   Андрей Ларионов   Первый коммит Rek...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  <?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
       */
31e0a8793   Fedor   task-132687 додел...
20
      public const HOME = '/';
02a1ed535   Андрей Ларионов   Первый коммит Rek...
21

31e0a8793   Fedor   task-132687 додел...
22
      public const LOGIN = '/';
6a962b009   Андрей Ларионов   Система авторизац...
23

02a1ed535   Андрей Ларионов   Первый коммит Rek...
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
53
54
      /**
       * 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());
          });
      }
  }