PDF-Dateien mit Ajax abrufen und öffnen
Um eine von einer Aktionsklasse generierte PDF-Datei über Ajax herunterzuladen und anzuzeigen, kann der folgende Ansatz verwendet werden genutzt werden:
Stellen Sie in der Aktionsklasse sicher, dass der Inhaltstyp korrekt auf „application/pdf“ eingestellt ist und dass der gewünschte Dateiname im Attribut „contentDisposition“ angegeben ist:
<code class="java">public String execute() { ... ... File report = signedPdfExporter.generateReport(xyzData, props); inputStream = new FileInputStream(report); contentDisposition = "attachment=\"" + report.getName() + "\""; contentType = "application/pdf"; return SUCCESS; }</code>
Konfigurieren Sie im Ajax-Aufruf die Anforderung, um die Stream-Antwort effektiv zu verarbeiten:
<code class="javascript">$.ajax({ type: "POST", url: url, data: wireIdList, cache: false, success: function(data) { // Convert the response data to a Blob object var blob = new Blob([data]); // Create a link element to trigger the download var link = document.createElement('a'); link.href = window.URL.createObjectURL(blob); // Set the desired file name for download link.download = "filename_with_extension.pdf"; // Simulate a click event to initiate the download link.click(); // Remove the Blob URL once the download completes window.URL.revokeObjectURL(blob); }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert('Error occurred while opening fax template' + getAjaxErrorString(textStatus, errorThrown)); } });</code>
Durch die Integration dieses Ansatzes kann die von der Aktionsklasse generierte PDF-Datei erfolgreich mit Ajax heruntergeladen und geöffnet werden.
Das obige ist der detaillierte Inhalt vonWie kann ich von einer Aktionsklasse generierte PDF-Dateien mit Ajax herunterladen und öffnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!