Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

[Angular] Como pegar o código da resposta de uma requisição http com método POST

Boa noite, galera! Tudo bem?

Estou fazendo uma chamada a um servidor utilizando o método POST através do HttpClient do Angular, importado pelo @angular/common/http.

Quero pegar o código de resposta que o servidor responde (2xx, 4xx, 5xx) e não consigo. Alguém pode me dizer uma forma de fazer isso?

Minha chamada é a seguinte

this.http.post(this.httpUrlPost, jsonSubmit).subscribe((data: ResponsePost) => {
    console.log(data);
});

A variável jsonSubmit é um objeto que eu envio por post, e a resposta é JSON contendo apenas uma mensagem.

A variável http vem construtor:

constructor(
    private http: HttpClient
)

Agradeço desde já :D

2 respostas
solução

Oii Eduardo, tudo bem??

Basta você colocar como terceiro parâmetro do método post um objeto para observar a resposta, e ele vai te retornar no callback de subscribe o objeto de resposta completo, e não apenas o body da resposta. Seu código ficaria assim:

this.http
    .post(this.httpUrlPost, jsonSubmit, {observe: 'response'})
    .subscribe( data => {
      console.log(data);
    });

Veja se isso te ajuda!!

abraços

Oi Vanessa. Tudo ótimo e contigo?

Funcionou perfeitamente.

Muito obrigado!!!