Files
pyrofetes-frontend/src/app/services/file.service.ts
T
2026-05-25 10:40:08 +01:00

28 lines
825 B
TypeScript

import {Injectable} from '@angular/core';
import {HttpResponse} from "@angular/common/http";
@Injectable({
providedIn: 'root',
})
export class FileService {
getFilenameFromHttpResponse(httpResponse: HttpResponse<Blob>) {
const contentDispositionHeader = httpResponse.headers.get('Content-Disposition');
let result = contentDispositionHeader.split(';')[1].trim().split('=')[1];
result = result.replace(/"/g, '');
return result;
}
downloadBlob(data: HttpResponse<Blob>) {
const url = window.URL.createObjectURL(data.body);
const anchor = document.createElement('a');
anchor.download = this.getFilenameFromHttpResponse(data);
anchor.href = url;
anchor.click();
anchor.remove();
window.URL.revokeObjectURL(url);
}
}