Configure CORS para clientes de navegador
Permita que origens confiáveis chamem sua API.
Configure CORS para clientes de navegador é uma aula grátis de Flask Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Flask Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Flask Academy inclui 4 aulas no total.
Por que os navegadores bloqueiam chamadas
Por padrão, um navegador recusa solicitações entre origens por segurança. Essa política de mesma origem impede que um site leia discretamente o conteúdo de outro.
O que CORS realmente é
CORS é um conjunto de cabeçalhos de resposta que informa quais outras origens podem chamar sua API. Ele abre a porta deliberadamente.
Definição de origem
Uma origem é a combinação do esquema, do host e da porta. Uma porta diferente ou o uso de http em vez de https conta como uma origem separada.
Conheça o Flask-CORS
Raramente é necessário escrever os cabeçalhos manualmente. A extensão Flask-CORS adiciona os cabeçalhos corretos a cada resposta.
pip install Flask-CORSAtive-o globalmente
A configuração mais simples envolve todo o aplicativo. Chamar CORS(app) permite qualquer origem, o que é aceitável durante o aprendizado.
from flask_cors import CORS
CORS(app)Restrinja às origens confiáveis
Em aplicativos reais, você especifica quem pode chamá-lo usando origins. Tudo que não estiver na lista continuará bloqueado pelo navegador.
CORS(app, origins=["https://app.example.com"])Limite as rotas abrangidas
Você pode limitar o CORS a um prefixo de caminho com resources. Aqui, somente o espaço de nomes da sua API é aberto a solicitantes externos.
CORS(app, resources={r"/api/*": {"origins": "*"}})O cabeçalho principal
Por baixo dos panos, a parte essencial é Access-Control-Allow-Origin. O navegador o lê para decidir se entrega a resposta ao seu código.
Solicitações de verificação prévia
Para algumas chamadas, o navegador envia primeiro uma verificação prévia OPTIONS para pedir permissão. O Flask-CORS responde automaticamente.
Permita credenciais
Para enviar cookies entre origens, você precisa definir supports_credentials. Observe que, nesse caso, uma origem curinga deixa de ser permitida.
CORS(app, supports_credentials=True)CORS não é autenticação
Lembre-se de que o CORS apenas orienta os navegadores. Ele não é uma barreira de segurança, portanto sua API ainda precisa de autenticação de verdade.
Verificação rápida
Escolha onde a decisão do CORS é aplicada.
Recapitulação
Você viu por que os navegadores bloqueiam chamadas entre origens, adicionou o Flask-CORS, restringiu origens e rotas, conheceu a verificação prévia e aprendeu que CORS não é autenticação. Muito bem!
Perguntas Frequentes
A aula “Configure CORS para clientes de navegador” é grátis?
Sim — o texto completo de “Configure CORS para clientes de navegador” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Flask Academy, atualize para CoddyKit PRO. O curso de Flask Academy inclui 4 aulas no total.
O que vou aprender em “Configure CORS para clientes de navegador”?
Permita que origens confiáveis chamem sua API. Você pratica Flask Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Flask Academy?
Nenhuma experiência prévia é necessária. Flask Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Configure CORS para clientes de navegador”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Flask Academy?
Sim. Cada aula de Flask Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Limite solicitações com Flask-Limiter
- Configure CORS para clientes de navegador
- Cabeçalhos de segurança e HTTPS
- Valide a entrada para impedir injeções