
Hello, there! Você já ouviu alguém dizendo que uma requisição foi bloqueada por "CORS"? Essa é uma daquelas siglas que aparecem com uma certa frequência quando estamos trabalhando com APIs, aplicações web e comunicação entre diferentes origens.
Se você está em dúvida do que ela significa, ê uma olhada abaixo para aprender mais sobre a sigla "CORS" e por que ela é tão importante no desenvolvimento de aplicações web. Check it out!
Você sabe o que significa a sigla CORS?
A sigla CORS vem da expressão em inglês "Cross-Origin Resource Sharing", que nós podemos traduzir para o português como "Compartilhamento de Recursos entre Origens".
Certo, mas o que isso significa? O CORS é um mecanismo que permite que um navegador determine se uma aplicação web pode fazer requisições para recursos que estão em uma origem diferente.
Por exemplo, imagine que seu front-end esteja rodando em https://APP.example.com e precise ele acessar uma API em outra origem, como https://API.example.com. Como essas aplicações estão em origens diferentes, o navegador pode aplicar as regras de CORS para verificar se essa comunicação é permitida.
É importante lembrar que o CORS é uma política aplicada pelos navegadores, e não simplesmente uma regra que impede um servidor de conversar com outro. Quando existe algum problema e a configuração não está correta, é comum aparecer aquele famoso erro no console do navegador: "blocked by CORS policy" ("bloqueado pela política de CORS"). And yes, it can be annoying!
Para evitar esse tipo de problema, o time de desenvolvimento deve configurar o servidor, ou a API, para permitir as origens, métodos e cabeçalhos necessários. Mas também é importante evitar um excesso de permissões, como liberar qualquer origem sem necessidade. Autorize apenas aquilo que você precisa, e nada além disso.
Now that you understand what CORS means, let's take a look at some examples?
- The browser blocked the request because of a CORS policy. (O navegador bloqueou a requisição por causa de uma política de CORS.)
- We need to configure CORS to allow requests from the application we're developing. (Precisamos configurar o CORS para permitir requisições da aplicação que nós estamos desenvolvendo.)
- There's a problem, the API doesn't allow requests from this origin. (Existe um problema, a API não permite requisições dessa origem.)
- I spent an hour debugging a CORS error. (Passei uma hora corrigindo um erro de CORS.)
Have you ever spent way too much time debugging a CORS error? (Você já passou tempo demais corrigindo um erro de CORS?)
Continue com a gente no nosso artigo "Você sabe o que são MONOLITHIC FRONTEND e MICRO FRONTEND?". See you!