No ‘Access-Control-Allow-Origin’ header is present on the requested resource

by Cinta Vidal Agullo / from beautifuldecay.com

Estava trabalhando em um projeto onde o web service em Jersey e a aplicação cliente em AngularJS estavam rodando no mesmo servidor Glassfish. Como esperado, quando a aplicação cliente consumisse o web service surgiria o erro “No ‘Access-Control-Allow-Origin’ header is present on the requested resource”.  Isso é uma questão relacionada ao CORS ou Cross-origin resource sharing. Uma aplicação web pode carregar livremente imagens, stylesheets, scripts, iframes, videos e plugins como o Adobe Flash de qualquer domínio. Porém, web fonts e requisições em AJAX são limitadas apenas para dentro do próprio domínio, e no meu caso, o web service está em um domínio (http://localhost:8080/meuwebservice/) diferente do domínio da aplicação  (http://localhost:8080/minhaaplicacao/), que possui o AngularJS fazendo requisições AJAX.

Para resolver tal situação, eu inseri o seguinte provider abaixo no meu web service. Lembrando que, para funcionar, os providers apenas devem estar na pasta que é lida pelo Jersey, ou pode ser entendida como a pasta onde estão os Resources, nenhuma outra configuração é necessária.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s