web-dev-qa-db-fra.com

Angular HttpClient en-têtes de réponse manquants

J'essaie d'entrer dans angular récemment. J'ai une demande paginée.

const myParams = new HttpParams().set('page', page.toString()).set('size', size.toString());
this.http.get<HttpResponse<User[]>>('https://localhost:8443/user/', {
      headers: new HttpHeaders({ 'Content-Type': 'application/json' }),
      params: myParams,
      observe: 'response'
    }).suscribe((response: HttpResponse<User[]>) => this.data = response.body);

Le nombre total d'éléments dans la base de données est transféré au client dans le X-Total-Count entête. j'ai essayé de le lire comme ça:

.suscribe((response: HttpResponse<User[]>) => {
    this.data = response.body;
    this.totalCount = response.headers.get('X-Total-Count');
});

Mais cela ne fonctionne pas. Il s'avère que response.headers ne comprend qu'un sous-ensemble des vrais en-têtes de réponse http.

voici à quoi ressemble l’objet headers

"headers": {
    "normalizedNames": {},
    "lazyUpdate": null
  }

Je suis sûr que X-Total-Count a été envoyé. Les devtools de Firefox le montrent. Pourriez-vous me dire comment l'inclure dans la réponse?

enter image description here

[~ # ~] mise à jour [~ # ~]

Cette question diffère de celle qui a été identifiée comme un doublon de la manière suivante: je n'ai pas demandé comment inspecter l'intégralité de httpResponse. J'ai compris cela par moi-même. J'ai demandé pourquoi l'attribut headers de la réponse n'est pas complet.

15
Mr.H.

Essayez d'ajouter withCredentials: true à l'objet d'options http.

0
Igor Masliansky