Resolvendo problema de Access-Control-Allow-Origin (CORS) no Laravel

thiagoluna

Thiago Luna

Posted on May 15, 2020

Resolvendo problema de Access-Control-Allow-Origin (CORS) no Laravel

Quando estamos desenvolvendo APIs RESTFULL, é comum esbarrarmos com erro de CORS do tipo
Erro CORS

Esse bloqueio se da por conta do protocolo HTTP e precisamos resolver.

Existem várias soluções na internet, como alterar o .htaccess, instalar pacotes como o barryvdh/laravel-cors entre outros.

A solução que compartilho com vocês é bem simples e resolveu o meu problema no Laravel 6.
Vamos lá!

1- Crie um novo Middleware
php artisan make:middleware Cors

2- Adicione neste novo Middleware, localizado em app/Http/Middleware/Cors.php, o seguinte:
Dentro do método handle
public function handle($request, Closure $next)
{
return $next($request)
//Acrescente as 3 linhas abaixo
->header('Access-Control-Allow-Origin', "*")
->header('Access-Control-Allow-Methods', "PUT, POST, DELETE, GET, OPTIONS")
->header('Access-Control-Allow-Headers', "Accept, Authorization, Content-Type");
}

3- Edite o arquivo app\Http\Kernel.php da seguinte forma:
Dentro de $middleware acrescente o middleware que acabou de criar:
protected $middleware = [
\App\Http\Middleware\TrustProxies::class,
...
...
\App\Http\Middleware\Cors::class, //acrescente essa linha
];

4- Teste novamente sua aplicação e vida que segue!

Tem muito conteúdo bom na internet explicando sobre CORS, porque acontece isso, n maneiras de resolver. Então, quis trazer um conteúdo curto e direto ao ponto, pois nosso prazo anda bem curto para as entregas, né?!

Agora, vamos voltar a codar porque a sprint está quase acabando.

Um abraço e até o próximo direto ao ponto.

Thiago Luna - Linkedin

💖 💪 🙅 🚩
thiagoluna
Thiago Luna

Posted on May 15, 2020

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related