
Erros evitados pelo CORS: "A origem não é permitida pelo Access-Control-Allow-Origin"
Introdução:
O erro "origem não é permitida por Access-Control-Allow-Origin" surge durante o compartilhamento de recursos de origem cruzada (CORS) quando um script do lado do cliente tenta acessar um recurso de uma origem diferente daquela que está executando de.
Causas:
Este erro tem várias causas possíveis:
- Política de mesma origem: JavaScript é restrito de acessar recursos fora de seu domínio sem a permissão explícita do servidor. Esta política evita que scripts maliciosos roubem dados do usuário ou comprometam a segurança do site.
- Resposta do servidor mal configurada: O servidor deve incluir o cabeçalho Access-Control-Allow-Origin apropriado em sua resposta para conceder acesso a origens específicas. Se este cabeçalho estiver ausente ou incorreto, o navegador impedirá a solicitação.
Resolvendo o problema:
- Verifique a resposta do servidor : Inspecione os cabeçalhos de resposta do servidor para garantir que o cabeçalho Access-Control-Allow-Origin esteja incluído e definido como a origem desejada.
- Habilitar CORS no servidor: Se o Se o servidor não tiver o CORS ativado, ele deverá ser configurado para suportá-lo. Isso pode envolver a configuração de regras CORS nos arquivos de configuração do servidor web.
- Usar JSONP: JSONP (JSON com preenchimento) é uma solução alternativa para a política de mesma origem que permite que dados sejam retornados como uma chamada de função em vez de um documento XML. No entanto, o servidor deve ser configurado para suportar JSONP.
- Use um proxy: Um proxy do lado do servidor, como um script PHP ou serviço ASP, pode ser usado para recuperar recursos de um origem diferente e passá-los para o script do lado do cliente.