我xhr-将一些数据发布到服务器,服务器返回PDF,我将其作为blob处理(使用iron-ajax' handle-as =&#34 ; blob" 属性,为了完整起见。) 现在我想在新的浏览器窗口中显示此blob / PDF(仅限Chrome / Windows)。
我已经尝试过 URL.createObjectURL(blob)和 (new FileReader()).readAsDataURL(blob) - 两者都无声地失败:
方法1)
function handlePdfResponse(blob) {
const pdfUrl = URL.createObjectURL(blob);
window.open(pdfUrl, '_blank');
}
方法2)
function handlePdfResponse(blob) {
const reader = new FileReader();
reader.onloadend = function(e) {
window.open(reader.result, '_blank');
};
reader.readAsDataURL(blob);
}
在这两种情况下,记录输入 blob 会产生:
Blob {size: 219478, type: "application/pdf"}
使用后一种方法,我可以记录 reader.result (这是一个有效的数据 - uri),将其粘贴到一个新的Chrome窗口中并凝视我闪亮的PDF。
似乎没有办法调试这些方法中的任何一种。
思考?
明显的错误?
还有什么我可以尝试的吗?
答案 0 :(得分:0)
原来Chrome讨厌弹出窗口。取消阻止他们获胜。