我是xhr-将一些数据发布到服务器,服务器返回一个PDF,我将其作为blob处理(为了完整起见,使用iron-ajax的handle-as = "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 .
似乎没有办法调试这些方法中的任何一种 .
思考?
明显的错误?
还有什么我可以尝试的吗?
编辑:亲爱的后代:我使用的是Chrome版本55.0
1 回答
结果Chrome讨厌弹出窗口 . 取消阻止他们获胜 .