Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Ajuda Spring Boot + Angular 2

Galera, estou precisando de um help, quem entende bem de angular 2, por favor me da uma ajuda ai; O caso é o seguinte, tenho esse trecho de código no angular 2 :

 constructor(private router: Router, http: Http){
          let headers = new Headers();
           let authToken = localStorage.getItem('auth_key');
           headers.append('Authorization',   'Bearer ' + authToken );

           let stream = http.get('http://localhost:9000/api/user', { headers });
           stream.subscribe(res => { 
            this.usuarios = res.json();
            console.log(this.usuarios);
        });
    }

A essa altura o usuário já vai estar autenticado e o token vai estar gravado no LocalStorage, até ai tudo bem, porém ao chamar a URI que vai fazer a requisição pro backend conforme descrito no código acima, está dando o seguinte erro : XMLHttpRequest cannot load http://localhost:9000/api/user. Response for preflight has invalid HTTP status code 500. Estou a horas tentando achar o problema mas não consigo. Se eu fizer essa requisição pelo Postman adicioando o Header da autenticação, a API devolve o JSON corretamente, portanto acredito que o problema não está no meu backend.

5 respostas

Bom, vc provavelmente está fazendo uma requisição para um endereço(porta diferente no caso do localhost) a partir da sua página. Isso é chamado de CORS => https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

O seu backend precisa estar preparado para isso... o navegador faz uma primeira requisição pedindo autorização para fazer as requisições seguintes...

Fala Alberto!!! Mas ai que é o fato curioso, o meu backend já ta habilitado. To usando o Spring boot e a anotação @CrossOrigin(origins = "*")

solução!

Então vê se não está estourando uma exception lá... Parece que vc ta usando o spring security, né? Não sei se está mesmo.. o security não tem um suporte pronto para o cors também.. bom, verifica se está acontecendo algo no server?

Esse link pode te ajudar => https://spring.io/blog/2015/06/08/cors-support-in-spring-framework

É, consegui resolver aqui, Valeu Alberto!!

Christian boa tarde.

Estou com o mesmo problema, vc poderia explicar como resolveu o problema ?