Sök…


Syntax

  • public function map (Router $ router) // Definiera vägarna för applikationen.
  • skyddad funktionskartaWebRoutes (Router $ router) // Definiera "webb" -vägarna för applikationen.

parametrar

Parameter Rubrik
Router $ router \ Belysa \ Routing \ Router $ router

Anmärkningar

Middleware innebär att varje samtal till en rutt går igenom mellanprogrammet innan du faktiskt slår din ruttspecifika kod. I Laravel används webb-mellanprogrammet för att säkerställa sessionhantering eller csrf-tokenkontrollen till exempel.

Det finns andra mellanwares som autor eller api som standard. Du kan också enkelt skapa din egen mellanprogram.

Lägga till api-rutter med andra mellanprogram och behålla standardwebprogramvara

Sedan Laravel version 5.2.31 tillämpas webbmedelsprogrammet som standard inom RouteServiceProvider ( https://github.com/laravel/laravel/commit/5c30c98db96459b4cc878d085490e4677b0b67ed)

I app / Providers / RouteServiceProvider.php hittar du följande funktioner som tillämpar mellanprogrammet på varje rutt i din app / Http / routes.php

public function map(Router $router)
{
    $this->mapWebRoutes($router);
}

// ...

protected function mapWebRoutes(Router $router)
{
    $router->group([
        'namespace' => $this->namespace, 'middleware' => 'web',
    ], function ($router) {
        require app_path('Http/routes.php');
    });
}

Som du kan se är middleware- webben tillämpad. Du kan ändra det här. Du kan dock också enkelt lägga till en annan post för att kunna lägga dina api-rutter till exempel i en annan fil (t.ex. routes-api.php)

public function map(Router $router)
{
    $this->mapWebRoutes($router);
    $this->mapApiRoutes($router);
}

protected function mapWebRoutes(Router $router)
{
    $router->group([
        'namespace' => $this->namespace, 'middleware' => 'web',
    ], function ($router) {
        require app_path('Http/routes.php');
    });
}

protected function mapApiRoutes(Router $router) 
{
    $router->group([
        'namespace' => $this->namespace, 'middleware' => 'api',
    ], function ($router) {
        require app_path('Http/routes-api.php');
    });
}

Med detta kan du enkelt separera dina api-rutter från dina ansökningsvägar utan det röriga gruppomslaget i dina rutter.php



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow