我正在尝试使用JavaScript实现PDF文件下载功能.
作为对POST请求的响应,我得到一个PDF文件,在Chrome DevTools控制台中看起来像(oResult数据容器,片段):
"%PDF-1.4↵% ↵40obj↵<>stream↵x
现在我正在尝试初始化下载过程:
let blob = new Blob([oResult], {type: "application/pdf"});
let link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = "tstPDF";
link.click();
Run Code Online (Sandbox Code Playgroud)
结果,点击一个按钮我得到tstPDF.pdf,它包含正确的页数,但PDF本身是空的,没有显示内容,尽管它是6 KB.
当我测试生成PDF的Java服务器端模块时,一切正常,它InputStream通过发送ServletOutputStream.因此,我认为这个问题是地方上的客户端,或许有东西MIME,BLOB,encoding,或类似的.
您知道为什么生成的PDF不显示任何数据吗?