使用 Ajax 解决 PDF 下载和打开问题
在 Web 开发中,允许用户通过 Ajax 调用下载和打开 PDF 文件可以是一个挑战。让我们探索解决此问题的解决方案。
在提供的操作类(MyAction)中,生成一个 PDF 文件并将其流分配给 inputStream。要将此流传送到浏览器,可以使用以下 Ajax 调用:
<code class="javascript">$.ajax({ type: "POST", url: url, data: wireIdList, cache: false, success: function(response) { var blob = new Blob([response]); var link = document.createElement('a'); link.href = window.URL.createObjectURL(blob); link.download = "<FILENAME_TO_SAVE_WITH_EXTENSION>"; link.click(); }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert('Error occurred while opening fax template' + getAjaxErrorString(textStatus, errorThrown)); } });</code>
此更新的 Ajax 调用利用 Blob() 和 createObjectURL() 方法为浏览器创建可下载文件。 link 元素用于触发下载过程,download 属性指定将 PDF 保存为的文件名。
通过实施此解决方案,您的 Ajax 调用将成功下载并在浏览器中打开生成的 PDF 文件。
以上是如何使用 Ajax 下载和打开 PDF 文件?的详细内容。更多信息请关注PHP中文网其他相关文章!