Angular2 Anzeigen PDF
Ich habe eine angular2 Projekt mit ein ASP.Net Web-API. Ich habe code, um eine Datei Pfad aus meiner Datenbank, das geht auf ein Dokument auf meinem server. Dann möchte ich zur Anzeige dieses Dokuments im browser in einem neuen tab. Hat jemand irgendwelche Vorschläge, wie dies zu tun?
Ich bin glücklich, um die Datei abzurufen, entweder Angular2 (Typoskript), oder in meiner API und streamen Sie Sie nach unten.
Dies ist mein Versuch, das abrufen in meinem API, aber ich kann nicht herausfinden, wie es in der Angular2 und richtig angezeigt:
public HttpResponseMessage GetSOP(string partnum, string description)
{
var sopPath = _uow.EpicorService.GetSOP(partnum, description).Path;
HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
var stream = new FileStream(sopPath, FileMode.Open);
result.Content = new StreamContent(stream);
result.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/octet-stream");
return result;
}
Jegliche Hilfe würde sehr geschätzt werden.
Vielen Dank!!!
InformationsquelleAutor der Frage DaRoGa | 2016-10-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zunächst, müssen Sie Optionen für Ihre http - Anforderung- set
responseType
zuResponseContentType.Blob
verwendenblob()
Lesen Antwort alsblob
und stellen Sie seinen Typ aufapplication/pdf
:Dann, um die Datei zu erhalten, müssen Sie
subscribe
zu es und Sie können neueObjectURL
und verwendenwindow.open()
für das öffnen von PDF im neuen tab:InformationsquelleAutor der Antwort Stefan Svrkota
Winkel-v. 5.2.1 Antwort:
In
*.services.ts
Und dann in
*.component.ts
Ist es wichtig, zu initiieren, und öffnen Sie eine neue Registerkarte vor der Dienst aufgerufen wird. Dann setzen Sie diese Tabletten url der fileurl.
InformationsquelleAutor der Antwort jonas
WINKEL 5
Ich hatte das gleiche problem, das ich verloren habe wenige Tage an.
Hier meine Antwort vielleicht anderen helfen, die geholfen, Rendern von pdf.
Für mich, obwohl, wenn ich erwähne, wie responseType : "arraybuffer", es war nicht in der Lage, es zu nehmen.
Für Sie, dass Sie brauchen, um zu erwähnen, wie responseType : 'arraybuffer' als 'json'.(Referenz)
Funktionierenden code
service.ts
}
Komponente.ts
Bezeichnet aus dem folgenden link
https://github.com/angular/angular/issues/18586
InformationsquelleAutor der Antwort MPPNBD
Angular 2+ B. PDF-viewer
Page.html
Seite.ts
app.- Modul.ts
hinzufügen
importieren Sie die
InformationsquelleAutor der Antwort Abdul-Mohsen Al-Enazi