Definir middlewares de Laravel dentro de un paquete de composer.
Autorangel cruz
Publicado
Lectura1 min de lectura

Ok, entonces qué es un grupo de middleware? La respuesta es sencilla, si vas al archivo app/Http/Kernel.php ahí vas a poder encontrar un arreglo llamado $middlewareGroups que incluye las claves "web" y "api".
Entendiendo ya los grupos de middleware ahora pasaré a explicar como agregar un middleware desde el service provider de un paquete.
Es tan sencillo como hacer lo siguiente:
<?php
namespace MyPackage\Namespace;
use MyPackage\Http\Middleware\CustomMiddleware;
use Illuminate\Support\ServiceProvider;
class MyServiceProvider extends ServiceProvider
{
public function register()
{
/** @var Router $router */
$router = $this->app['router'];
$router->pushMiddlewareToGroup('web', CustomMiddleware::class);
}
}También si quisieran agregar un alias para un middleware lo pueden hacer de esta forma:
<?php
namespace MyPackage\Namespace;
use MyPackage\Http\Middleware\CustomMiddleware;
use Illuminate\Support\ServiceProvider;
class MyServiceProvider extends ServiceProvider
{
public function register()
{
/** @var Router $router */
$router = $this->app['router'];
$router->aliasMiddleware(
'custom.middleware',
CustomMiddleware::class
);
}
}
Y ya a partir de aquí queda de ustedes usarlo en las rutas o en el constructor de sus controladores. 😉
