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

satellizer + $http

Olá, Sei que no curso n]ao é abordado a biblioteca satellizer (https://github.com/sahat/satellizer) porem preciso saber se alguém pode me ajudar.

Preciso fazer uso dela com $http, então por exemplo para eu usar ela para um login, posso chamar da seguinte maneira.

$auth.login(user, [options])

em user na realidade é o objeto que vem do meu form, exemplo:

var user = {
  email: $scope.email,
  password: $scope.password
};

mas minha dúvida esta, como posso fazer para mandar um token via header, mas é um token que uso só no login e no registrar, pq internamente depois eu uso JWT.

Aqui no link até fala mais da lib e do método para fazer login : https://github.com/sahat/satellizer#authloginuser-options

Preciso de um help :)

4 respostas

O primeiro problema acima foi resolvido, porem agora estou tendo outro problema.

Se eu fazer chamada via postman no headers vem uma porrada de informações, inclusive meu jwt. Agora se eu chamar via angularjs, só vem "content-type":"application/json","cache-control":"no-cache" ou seja não esta vindo tudo como no postman.

Tem alguma configuração que deve ser feito no lado do server ou algo que deve estar sendo feito nesse caso no angular, pois pesquisei na net e tal e encontrei o seguinte relato: http://stackoverflow.com/questions/21635651/angularjs-http-object-not-showing-all-headers-from-response

Agora minha pergunta é, o problema esta em qual lado server ou SPA, preciso de sua ajuda mestre Flávio :)

não sou o mestre, mas posso tentar ajudar :). Abra o devtools do navegador e confere os cabeçalhos da resposta. Se estiverem vindo todos, você sabe que não é problema do servidor.

Inspecionando aqui, no response headers ta chegando todas as informações, mas e por que essas mesmas respostas que ta chegando no meu arquivo no navegador, não esta chegando no console.log, sabendo que é a mesma chamada, mesmo doc.

Como mencionei acima, encontrei sobre isso no post acima, é o mesmo problema, no navegador chega, mas no console.log não. Foi a única explicação possível que encontrei, pois não tem configurações ou coisas do tipo para fazer no angular, pois nada mais é do que uma chamada ajax, ou estou muito enganado.

solução!

Resolvido, era no backend o problema, tinha que ter no filtro do CORS:

Access-Control-Expose-Headers

Achei que não deveria ser erro de Front haha

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software