Rumah  >  Artikel  >  Java  >  Bagaimanakah Saya Boleh Muat Turun dan Buka Fail PDF yang Dijana oleh Kelas Tindakan Menggunakan Ajax?

Bagaimanakah Saya Boleh Muat Turun dan Buka Fail PDF yang Dijana oleh Kelas Tindakan Menggunakan Ajax?

Susan Sarandon
Susan Sarandonasal
2024-10-30 20:20:30611semak imbas

How Can I Download and Open PDF Files Generated by an Action Class Using Ajax?

Dapatkan dan Buka Fail PDF Menggunakan Ajax

Untuk memuat turun dan memaparkan fail PDF yang dijana oleh kelas tindakan melalui Ajax, pendekatan berikut boleh digunakan:

Dalam kelas tindakan, pastikan jenis kandungan ditetapkan dengan betul sebagai "aplikasi/pdf" dan nama fail yang dikehendaki dinyatakan dalam atribut "contentDisposition":

<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>

Dalam panggilan Ajax, konfigurasikan permintaan untuk mengendalikan respons strim dengan berkesan:

<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>

Dengan menggabungkan pendekatan ini, fail PDF yang dijana oleh kelas tindakan boleh dimuat turun dan dibuka dengan jayanya menggunakan Ajax.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Muat Turun dan Buka Fail PDF yang Dijana oleh Kelas Tindakan Menggunakan Ajax?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn