1
resposta

Credenciais Client Basic

Boa noite.

Quando se tem uma API que está utilizando OAuth2 onde é necessário no Header da requisição passar os dados das credenciais do client como seria a forma mais segura de implementar no angular, deixaria no próprio método esses dados ou colocaria no enviroment por exemplo.

Segue um exemplo mais ou menos do que estou falando:

 login(email: string, password: string): Observable<any> {

    headers = new HttpHeaders().append('Authorization', 'Basic YW5ndWxhcjpAbmd1bEByMA==')
      .append('Content-Type', 'application/x-www-form-urlencoded');
    const body = `username=${email}&password=${password}&grant_type=password`;

    return this.http.post(this.url, body, {headers : this.headers})
  // Resto do código...
  }
1 resposta

Fala ai Allef, tudo bem? Tudo vai depender de como está pegando os dados, se eles forem fixos, eu recomendaria deixar nos arquivos env e injetá-los na requisição através de HttpInterceptor.

Caso os mesmos sejam dinâmicas, por exemplo um login com Facebook, acho que poderia salvar o token no Local Storage (por padrão não expira) ou Session Storage (por padrão espira quando fechar aba ou navegador).

No seu caso, me parece que as informações são fixas, então minha recomendação seria deixar nos arquivos de env e talvez nem comitá-los no repositório remoto.

Espero ter ajudado.

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