web-dev-qa-db-fra.com

Angular 6 - La réponse HTTP 200 est nulle dans l'abonnement

J'ai le Angular suivant http.service.ts que j'utilise pour appeler l'API /login.

login(user: User) {
    console.log("logging in");
    console.log(JSON.stringify(user));
    this.http
        .post<any>(this.loginURL, user, httpOptions)
        .subscribe(
            res => console.log('response : ' + res),
            err => console.log('error : ' + err))
}

Il s'agit d'un appel POST vraiment standard, mais il renvoie toujours null et je ne comprends pas pourquoi . Il s'agit de la Network informations de l'onglet Google Chrome

 enter image description here

Les informations Console du Chrome

 enter image description here

Je ne comprends pas pourquoi la réponse est null. Même si je n'ai pas de charge utile, il devrait au moins rendre la headers disponible non?

3
Yassin Hajaj

Essayez ce qui suit:

this.http.post("url", body, {headers: headers, observe: "response"})
   .subscribe(res => console.log(res));

Vous pouvez prendre les mêmes options http que vous avez mais ajouter le observer: response. l'en-tête est HttpHeaders du client http. ex: headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded'),

7
Nour

Essayez ce qui suit,

this.http.post(loginUrl,user,httpOptions).map( res =>res).subscribe(data => {
  console.log(data);
});
0
Sajeetharan