好的,假设我在某处存储了文档数据,我们随意取这个 pdf。
问题 #1。我想要做的是对该 URL 进行 AJAX 调用(因为我需要传递一些身份验证标头并且它是跨域的)。然后获取返回的数据,为其创建一个blob url,将 iFrame 附加到 DOM,并将其定向src
到 blob url。
目前我的代码如下所示:
$.ajax({
url:'http://www.grida.no/climate/ipcc_tar/wg1/pdf/tar-01.pdf'
}).done(function(data){
var file = new Blob([data], {type:'application/pdf'}),
url = URL.createObjectURL(file),
_iFrame = document.createElement('iframe');
_iFrame.setAttribute('src', url);
_iFrame.setAttribute('style', 'visibility:hidden;');
$('#someDiv').append(_iFrame);
});
不幸的是,我在 iFrame 中收到“无法渲染 PDF”。
问题 #2。我希望这会导致文件下载提示。不确定如何保证这一点,因为 PDF 自然只会显示在 iFrame 中。