Resolvendo problema de Access-Control-Allow-Origin (CORS) no Laravel
Thiago Luna
Posted on May 15, 2020
Quando estamos desenvolvendo APIs RESTFULL, é comum esbarrarmos com erro de CORS do tipo
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
Posted on May 15, 2020
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.