Safari浏览器xlsx下载无法正常工作,而是在新标签页中打开blob

时间:2019-04-04 07:41:24

标签: typescript asp.net-core angular6 filesaver.js

我正在使用fileSaver.js来从API下载xlsx文件。它适用于IOS Safari以外的所有浏览器。 Safari会在新标签页中打开文件,而不是下载文件。在Safari中,我可以看到用于保存文件的选项,但是名称变为“ unknown.xlsx”。但是在IOS Chrome中,我也看不到任何下载选项。

我的打字稿:

    let cd = resposne.headers.get("content-disposition");
    //get the file name with regex
    let regex = /filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/;
    let match = regex.exec(cd);
    //is there a file name?
    let fileName = match[1] || "answers";
    //replace leading and trailing slashes that C# added to your file name
    fileName = fileName.replace(/\"/g, "");
    let blob = resposne.body;

    // Using fileSaver.js for fixing safari file download error.
    // This plugin supports all modern browser for downloading files from API
    saveAs(blob, fileName);

有什么方法可以直接从IOS Safari或chrome下载excel文件吗?

0 个答案:

没有答案