首页 > 解决方案 > Chrome 扩展,下载一个 blob 文件。并非所有站点都正确执行此操作

问题描述

我目前正在开发一个 chrome 扩展。此扩展程序创建一个 blob 并让用户下载“文件”blob。

我的问题是当我创建文件时,它在某个站点上正确打开,而其他站点在新选项卡中打开

有我的代码,我想我没有犯错

function downloadBlob(blob){
var FileName = "test.txt";
 var urlCreator = window.URL || window.webkitURL;
        var Link = urlCreator.createObjectURL(blob, { type: "application/octet-stream" });
       var a = window.document.createElement("a");
          a.href = Link;
          a.download = FileName;
          document.body.appendChild(a);
a.click();
          document.body.removeChild(a);
}

网站的 CSP 是否会影响我的 blob 下载?

我也尝试返回链接,将其设置为新链接。总是一样的结果。当我返回链接时,如果我“右键单击”并按另存为,我的文件将成功保存。

我还看到chrome.downloads.dowload我可以在我的扩展程序中使用它吗?我试了一下,但没有奏效。 https://developer.chrome.com/extensions/downloads

标签: javascriptgoogle-chrome-extensionblobcontent-security-policy

解决方案


推荐阅读