2
Ich möchte auf den neuen HttpClient wechseln. Bis jetzt ich mit Datei herunterlädt, die folgenden:Angular 4.3: Einen Array-Puffer mit neuen HttpClient
getXlsx(): Observable<any> {
return this.http.get('api/xlsx', {
responseType: ResponseContentType.ArrayBuffer, // set as ArrayBuffer instead of Json
})
.map(res => downloadFile(res, 'application/xlsx', 'export.xlsx'))
.catch(err => handleError(err));
}
export function downloadFile(data: any, type: string, filename: string): string {
const blob = new Blob([data._body], { type });
const url = window.URL.createObjectURL(blob);
// create hidden dom element (so it works in all browsers)
const a = document.createElement('a');
a.setAttribute('style', 'display:none;');
document.body.appendChild(a);
// create file, attach to hidden element and open hidden element
a.href = url;
a.download = filename;
a.click();
return url;
}
Ändern der respondeType zu ‚Arraybuffer‘ in leere Dateien führen. Irgendwelche Ideen, wie man es löst?
Haben Sie auch versucht, 'response zu verwenden:‚blob'' + die 'neuen Blob()' zu entfernen? –
Vielen Dank! Es funktioniert! – Luke