Middlewares Globais no Laravel
Salve salve galera do bem, aqui quem fala é o Carlos Ferreira para mais um tutorial. Dessa vez vamos aprender sobre como definir middlewares globais no Laravel.
Antes de começar, é importante entender o porque configurar Middlewares globais no Laravel. Como já sabemos Middlewares no Laravel servem para definir filtros, restringir e limitar certas ações do usuário dentro do sistema.
Definir um Middleware global dá a possibilidade de aplicar um filtro em todo o sistema.
Vamos a um exemplo muito simples, temos uma aplicação, e independente de qual página o usuário for acessar ele precisa estar logado, neste caso, podemos aplicar o Middleware auth globalmente, assim não precisa aplicar o Middleware em todas as rotas, seja através de grupo de rotas ou individualmente.
Vamos a prática:
Na classe Kernel (app/Http/Kernel.php) definimos as configurações de Middlewares do Laravel.
No atributo $middleware que é um array, podemos passar definir quais filtros serão aplicados automaticamente, em toda a aplicação.
A versão 5.6 do Laravel já aplica alguns filtros por default, como:
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
\App\Http\Middleware\TrustProxies::class,
];
Para aplicar o Middleware “auth” por default (padrão) basta simplesmente acrescentar a classe Authenticate neste array:
\Illuminate\Auth\Middleware\Authenticate::class
Resultado final:
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
\App\Http\Middleware\TrustProxies::class,
\Illuminate\Auth\Middleware\Authenticate::class,
];
Feito isso, pronto!
Agora por padrão já aplica o Middleware (filtro) “auth” em toda a aplicação, para o usuário conseguir acessar QUALQUER recurso no sistema precisa estar autenticado.
PS. Da mesma forma que aplicamos o Middleware auth, você pode aplicar QUALQUER outro Middleware que precisar.
Espero que tenha gostado, e qualquer dúvida, só deixar aquele comentário! 🙂
Abraços []’s
Salve salve galera do bem, aqui quem fala é o Carlos Ferreira para mais um tutorial. Dessa vez vamos aprender sobre como definir middlewares globais no Laravel.
Antes de começar, é importante entender o porque configurar Middlewares globais no Laravel. Como já sabemos Middlewares no Laravel servem para definir filtros, restringir e limitar certas ações do usuário dentro do sistema.
Definir um Middleware global dá a possibilidade de aplicar um filtro em todo o sistema.
Vamos a um exemplo muito simples, temos uma aplicação, e independente de qual página o usuário for acessar ele precisa estar logado, neste caso, podemos aplicar o Middleware auth globalmente, assim não precisa aplicar o Middleware em todas as rotas, seja através de grupo de rotas ou individualmente.
Vamos a prática:
Na classe Kernel (app/Http/Kernel.php) definimos as configurações de Middlewares do Laravel.
No atributo $middleware que é um array, podemos passar definir quais filtros serão aplicados automaticamente, em toda a aplicação.
A versão 5.6 do Laravel já aplica alguns filtros por default, como:
protected $middleware = [ \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class, \App\Http\Middleware\TrimStrings::class, \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class, \App\Http\Middleware\TrustProxies::class, ];
Para aplicar o Middleware “auth” por default (padrão) basta simplesmente acrescentar a classe Authenticate neste array:
\Illuminate\Auth\Middleware\Authenticate::class
Resultado final:
protected $middleware = [ \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class, \App\Http\Middleware\TrimStrings::class, \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class, \App\Http\Middleware\TrustProxies::class, \Illuminate\Auth\Middleware\Authenticate::class, ];
Feito isso, pronto!
Agora por padrão já aplica o Middleware (filtro) “auth” em toda a aplicação, para o usuário conseguir acessar QUALQUER recurso no sistema precisa estar autenticado.
PS. Da mesma forma que aplicamos o Middleware auth, você pode aplicar QUALQUER outro Middleware que precisar.
Espero que tenha gostado, e qualquer dúvida, só deixar aquele comentário! 🙂
Abraços []’s