用IE9下载base64 pdf

Download base64 pdf with IE9

我有一个从外部系统获取的 base64 pdf。 我希望能够使用 JavaScript 在 IE9 中下载此 pdf,这是一个问题,因为 IE9 不支持 pdf 的 DATA URI。

请帮帮我。 谢谢!

您应该使用基于 Adob​​e Flash 的插件 Downloadify (see the demo) 以允许用户在 IE9 中下载文件。

您可以使用以下js函数查看当前浏览器是否支持dataURI:

function CheckDataURISupport(){

var result = true;
var checkDataURISupportImage = new Image();

checkDataURISupportImage.onload = checkDataURISupportImage.onerror = function(){
    if(this.width != 1 || this.height != 1){
        result = false;
    }
}
checkDataURISupportImage.src = "data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=";
// check if we have datauri support in current browser - end

    return result;
}

Downloadify.js 是一个很好的解决方案。只是要小心选项。应该有

'dataType': 'base64'
'data:' string representation of pdf in base64 format

还要确保您的 link/button 已通过 downloadify 插件插入 'flash code'(在 downloadify.create() 初始化后检查源代码)。您还可以检查您的 base64 是否在开头有 data:application/pdf;base64, 类型。