Angular HttpClient не может получить файл Multipart - PullRequest
0 голосов
/ 17 марта 2019

Я постоянно борюсь со странной проблемой. Я думаю, что HttpClient по-прежнему обрабатывает ответ сервера как JSON ...

Запиши мой первый метод в @Component, но у меня все еще есть «ошибка» в консоли.

downloadDocument(url: string) {
this.client.download(url).subscribe(response => {
  console.log('success');
}, error => {
  console.log('error');
});

}

И методы из объекта 'client':

download(url: string): Observable<any> {
return this.httpClient.get(url, this.prepareDownloadHeaders());
}

private prepareDownloadHeaders() {
const token = this.authService.getToken();
return {
  headers: new HttpHeaders({
    'Authorization': 'Bearer ' + token,
  })
};
}

И Chrome показывает, что я правильно получил файл: enter image description here

Я пытался решить эту проблему многими способами, например, ниже и многое другое.

private prepareDownloadHeaders() {
const token = this.authService.getToken();
return {
  headers: new HttpHeaders({
    'Accept': 'application/pdf',
    'Authorization': 'Bearer ' + token,
    responseType: 'blob' as 'json'
  })
};

}

...