如何在SafariMac桌面(JavaScript)中下载excel文件 你好,JavaScriptors,

如何在SafariMac桌面(JavaScript)中下载excel文件 你好,JavaScriptors,,javascript,excel,safari,blob,Javascript,Excel,Safari,Blob,我试图在Safari中下载xlsx(excel)类型的blob文件。我这样做: obReader = new FileReader(); obReader.onload = function(e) { obdata = btoa(obReader.result); obDatauri = 'data:' + isbContentType + ';base64,' + obdata; window.location = obDatauri; }; obReader.rea

我试图在Safari中下载xlsx(excel)类型的blob文件。我这样做:

obReader = new FileReader();
obReader.onload = function(e) {
    obdata = btoa(obReader.result);
    obDatauri = 'data:' + isbContentType + ';base64,' + obdata;
    window.location = obDatauri; 
};
obReader.readAsBinaryString(iobBLOB);
上面的代码下载pdf和txt文件,但当我使用下载excel文件时,它不起作用

var iobBLOB有blob,isbContentType有Content类型,我用过这些类型:

  • 应用程序/vnd.ms-excel
  • 应用程序/强制下载
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
以及其他在


Blob文件具有以下类型:

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

在Macbook pro Safari 9.03上测试


注意:此代码适用于ChromeiOS和Safari(iPhone)


谢谢你的帮助
readAsBinaryString
已弃用。还有,为什么不直接使用
readAsDataURL
?好的,谢谢@Musa。但我现在更新了,事情还是一样。文件阅读器的结果如下:
“数据:application/vnd.openxmlformats of cedocument.spreadsheetml.sheet;base64,”
,它可以下载,但没有扩展名。@EsNoguera您想回复Musa,不是我。@rmaddy yes man,对不起