Bom dia eu envio o id pelo body, mas sempre a meu backend me retorna que o id é invalido. Eu testei pelo Postman e funcionou de boa com o mesmo id que estou enviando pela aplicação.
Eu salvo esse id e o token no local Storage quando faço o login,
window.localStorage.setItem('token', result.token);
window.localStorage.setItem('idFuncionario', result.id);
Eu tenho um interceptor que verifica o token e clona o request para enviar o token em todas as requisições,
request = req.clone({
headers: req.headers.set('Authorization', `Bearer ${token}`)
});
meu método no component.ts está assim,
getMarcacoe() {
const data: any = {
idFuncionario: window.localStorage.getItem('idFuncionario')
};
this.marcacaoService.getMarcacoes(data).subscribe(data => {
console.log(data);
});
e no service assim,
private options: any = {
headers: new HttpHeaders({
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
})
};
getMarcacoes(data: any) {
const resp = this.http.post(`https://cors-anywhere.herokuapp.com/${environment.api}/servico/sessao/ponto/obter-pontos`,
JSON.stringify(data), this.options);
return resp;
}
Obs: Usei esse prefixo na URL porque estava dando um erro estranho, pesquisei no google e achei esse solução. Não sei se é a mais correta.