получить заголовки из запроса Http получить в Angular - PullRequest
0 голосов
/ 02 мая 2018

Я звоню в API, который получает данные BLOB-объектов.

серверная часть посылает мне также имя файла в заголовке.

Моя настоящая проблема в том, что я не могу получить заголовок из API.

Вот мой service.ts

public openFile(path) {
  let url='/download/';
  let pathFile= new HttpParams().set('pathFile', path);
  return this.httpClient.get(url,{params:pathFile, responseType: 'blob' });

и в component.ts Я звоню в сервис. когда я пытаюсь напечатать res.headers, я получаю неопределенное в консоли.

openFile(path){
  this.creditPoliciesService.openFile(path).toPromise().then (data => {
    console.log("dataaaaaa",data.headers); // undefined
    var blob = new Blob([data], {type: 'application/pdf'}); 
    if (window.navigator && window.navigator.msSaveOrOpenBlob) {
      window.navigator.msSaveOrOpenBlob(blob);
    }
    else {
      var fileURL = URL.createObjectURL(blob); 
      window.open(fileURL);
    }
  });
}

В администраторе разработчика инструментов я получаю информацию в заголовке ответа, но не могу найти ее в переменной ответа.

1 Ответ

0 голосов
/ 02 мая 2018

передать ключ наблюдения со значением «response», чтобы получить полный ответ

getData() {
 this.http.get(this.url, { observe: 'response' }).subscribe(res => {
 this.headerProperty = res.headers.get('property name here');

 });
}
...