我在瀏覽器中生成了一個 PDF,并轉換為一個 blob 物件。通過使用 javascript 注入a標簽(下面的示例代碼)下載此檔案的“傳統”方法會在瀏覽器中打開 PDF,但這會替換用戶打開的頁面,導致他們丟失任何未保存的作業。添加target="_blank"不會改變這一點,檔案仍然在同一個選項卡中打開。
const blob = new Blob([arrayBuffer], { type: "application/pdf" });
const url = URL.createObjectURL(blob);
const anchorElement = document.createElement('a');
anchorElement.href = url;
anchorElement.download = fileName;
anchorElement.target = "_blank";
anchorElement.click();
anchorElement.remove();
URL.revokeObjectURL(url);
我很樂意在新選項卡中打開 PDF,或者強制下載它。由于不是從 URL 加載 PDF,因此無法在其上設定任何標題。
uj5u.com熱心網友回復:
嘗試;
const blob = new Blob([arrayBuffer], { type: "application/pdf" });
const url = URL.createObjectURL(blob);
window.open(url, '_blank');
uj5u.com熱心網友回復:
最終找到了解決方案,在 blob 上錯誤地設定 MIME 型別會破壞瀏覽器的檔案型別檢測,并阻止內置預覽啟動。
const blob = new Blob([arrayBuffer], { type: "application/octet-stream" });
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/444818.html
標籤:javascript pdf 下载
