PHP Classes

File: server/app/Providers/RouteServiceProvider.php

Recommend this page to a friend!
  Classes of mohammad anzawi   PHP Wallet API and Application   server/app/Providers/RouteServiceProvider.php   Download  
File: server/app/Providers/RouteServiceProvider.php
Role: Class source
Content type: text/plain
Description: Class source
Class: PHP Wallet API and Application
Application to manage a wallet by calling an API
Author: By
Last change:
Date: 2 years ago
Size: 1,680 bytes
 

Contents

Class file image Download
<?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.
     *
     * This is used by Laravel authentication to redirect users after login.
     *
     * @var string
     */
   
public const HOME = '/home';

   
/**
     * The controller namespace for the application.
     *
     * When present, controller route declarations will automatically be prefixed with this namespace.
     *
     * @var string|null
     */
    // protected $namespace = 'App\\Http\\Controllers';

    /**
     * Define your route model bindings, pattern filters, etc.
     *
     * @return void
     */
   
public function boot()
    {
       
$this->configureRateLimiting();

       
$this->routes(function () {
           
Route::prefix('api')
                ->
middleware('api')
                ->
namespace($this->namespace)
                ->
group(base_path('routes/api.php'));

           
Route::middleware('web')
                ->
namespace($this->namespace)
                ->
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(optional($request->user())->id ?: $request->ip());
        });
    }
}