Incluindo CORS em projeto Laravel Api

Laravel

O Laravel é um dos mais famosos framework para PHP. Com ele você pode trabalhar com a arquitetura MVC ou arquitetura apenas para API. Uma funcionalidade não nativa no Laravel é o CORS.

Para configurar o CORS no Laravel precisamos criar um Middleware dentro da pasta app/Http/Middleware com o nome CORS.php.

<?php
namespace App\Http\Middleware;
use Closure;

class Cors
{
public function handle($request, Closure $next)
{
return $next($request)
->header("Access-Control-Allow-Origin", "*")
->header("Access-Control-Allow-Credentials", "true")
->header("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS")
->header("Access-Control-Allow-Headers", "X-Requested-With, Content-Type, X-Token-Auth, Authorization");
}
}

Após criar o arquivo, precisamos adicionar o Middleware ao Kernel do Laravel.
Edite o arquivo app/Http/Kernel.php e adicione o array $middleware a linha:

‘cors’ => \App\Http\Middleware\Cors::class

No meu projeto o array completou ficou:

protected $middleware = [
\App\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,
\App\Http\Middleware\RequestCache::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
'cors' => \App\Http\Middleware\Cors::class
];

 

Be the first to comment

Leave a Reply

Seu e-mail não será publicado.


*