• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] PDF Stream im neuen Fenster darstellen

Andre1985

New member
Hallo zusammen,
ich habe gerade ein Problem und hoffe ihr schafft es mir da weiterzuhelfen.

Erklärung:
Ich bekomme über die API Schnittstelle eines Programm eine PDF als Stream zurück. Wie das es ausschaut habe ich mal als Screenshot zur Verfügung gestellt.

Diesen Stream möchte ich jetzt über Javascript in einem neuen Fenster darstellen. Das mit dem neuen Fenster klappt soweit und auch der PDF-Reader wird geöffnet. Jedoch bleibt dieser leer.

Wie kann ich diesen Stream in einem neuen Fenster vernünftig darstellen?

window.open("data:application/pdf;" + encodeURI(e.result)); hat z.B. nicht funktioniert.

Danke euch schonmal.
 

Anhänge

  • PDFSTREAM.PNG
    PDFSTREAM.PNG
    152,6 KB · Aufrufe: 5
Also das Ganze passiert serverseitig und fragt aus einer Datenbank für Langzeitarchivierung eine Bericht ab.

Die genauen Aufruf bekomme ich hier gerade nicht zusammen da ich das Thema gerade bei der Arbeit behandeln.

Der ungefähre Request sieht so aus:

GET api/v2.1/printreport?token=432423.....43432q34&berichtname=Bericht1&from=[Zeit von]&to=[Zeit to]

Im Header gebe ich dann noch IP-Adresse und Port mit.

Sorry wenn die Infos jetzt nicht total ins Detail gehen.

Auf jedenfall reiche ich die Antwort dann clientseitig durch und das Ergebnis siehst du oben in dem Screenshot.

Ich hab ein bisschen gegoggelt und dort bin ich auf die Info gestoßen das es eigentlich möglich ist diese Info einfach an ein neues Fenster durchzureichen und application/pdf zu setzen. Leider hatte ich damit keinen Erfolg.

Interessant werde auch ob man sowas vielleicht mit pdf.js realisieren könnte.

Danke schon mal für deine Anwort.
 
Was ist denn der Client? Ist das ein Browser? Ist das die selbe Maschine wie der Streamempfänger? Ist eine Webserver Software dazwischen?
Sonst kann doch der Server vor den Stream einen HTTP Header klatschen und ihn dann an den Client weiter schicken. Ich verstehe deine Infrastruktur im Moment nicht so ganz.
 
Danke euch erstmal.

Ich denke eher das der Stream irgendwie nicht ganz korrekt zurückkommt.

Das window.open meldet nämlich immer einen Fehler im PDF Dokument.

Ich versuche mal einen Weg zu finden wie ich testen ob das PDF Dokument sauber gesendet wird.

Danke euch schon mal und das Thema kann gerne geschlossen werden.
 
Hallo Mike,
also ich habe es mit deiner Lösung fast zu laufen bekommen.

Er hat mir die zwar die richtige Anzahl der Seiten angezeigt jedoch ohne Inhalt. Grund war das hier noch der Stream fehlerhaft übergeben wurde.

Jetzt stellt er mir über window.open die Seite da.

Falls es euch interessiert handelt es sich um das Programm atvise das eine Weblösung für Maschinenvisualisierungen anbietet. Die System das mir die PDF generiert hat nennt sich June5 der Firma VIDEC. Hier ist es möglich einen Report über die WebAPI abzufragen.

Diese liefert mir den Stream dann im base64 String.


Wenn ihr weitere Fragen habt versuche ich Sie gerne zu beantworten.
 
Zurück
Oben