我正在使用 REST api,它向我发送带有文件信息(base64 内容、mime ...)的 json 数据。我想在 Chrome 中打开 PDF。URL.createObjectURL 是一个糟糕的解决方案,因为重定向后,我们无法下载文件。
因此,作为后端,我想将标头响应更改为“application/pdf”,并直接显示文件内容。
我在 HttpClient Interceptors 模块中搜索:
@Injectable()
export class DownloadInterceptor implements HttpInterceptor {
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return next.handle(request).map(event => {
if (event instanceof HttpResponse) {
if (event.body) {
let fileContent, typeMime;
fileContent = event.body.cContenuFichier;
let headers = new HttpHeaders({
'Content-Type': 'application/pdf'
});
event = event.clone({ body: fileContent, headers: headers })
}
}
return event;
});
}
现在,如何显示这个?如果我使用组件,文件内容将显示在经典 html 页面中。
那么,有可能吗?有角?与节点?
非常感谢,