Aquí estoy usando rxjs Ajax para hacer una llamada de publicación a la API y tomar el nombre del archivo de los encabezados de respuesta y descargar el archivo. Necesito reemplazar la llamada Ajax con el servicio http de angulares. No entiendo cómo reemplazar esto con http ya que no hay xhr en la respuesta https que estoy recibiendo. Necesito ayuda para convertir esta llamada ajax en una llamada http. Gracias :)
ajax({ url: url, method: method, responseType: "blob", headers: headers, body: body, }).subscribe((data) => { let filename = ""; let disposition = data.xhr.getResponseHeader("Content-Disposition"); if (disposition && disposition.indexOf("attachment") !== -1) { let filenameRegex = /filename\*?=['"]?(?:UTF-\d['"]*)?([^;\r\n"']*)['"]?;?/; let matches = filenameRegex.exec(disposition); if (matches != null && matches[1]) { filename = decodeURIComponent(matches[1]); } } let blob = new Blob([data.response]); let link = document.createElement("a"); link.href = window.URL.createObjectURL(blob); link.download = filename; link.click(); }); }http .get<any>('url', {observe: 'response'}) .subscribe(resp => { console.log(resp.headers.get('X-Token')); });de esta respuesta: Lea los encabezados de respuesta de la respuesta API - Angular 5 + TypeScript