用Blob下载JavaScript文件

用Blob下载JavaScript文件,javascript,Javascript,我正在尝试从JS下载该文件。服务器以应用程序/octect流的形式发送流。在JS中,我是这样做的: var blob = new Blob([this.response], {type: "application/octet-stream"}); var downloadUrl = window.URL.createObjectURL(blob); var a = document.createElement("a"); a.href = downloadUrl; a.download = fi

我正在尝试从JS下载该文件。服务器以应用程序/octect流的形式发送流。在JS中,我是这样做的:

var blob = new Blob([this.response], {type: "application/octet-stream"});
var downloadUrl = window.URL.createObjectURL(blob);
var a = document.createElement("a");
a.href = downloadUrl;
a.download = filename;
document.body.appendChild(a);
a.click();
URL.revokeObjectURL(downloadUrl);

但是当打开下载的文件时,它只是空的。文件可以是jpeg、pdf、txt和其他mime类型

我的下载库接受blob:也就是说,this.response有你的内容吗?谢谢你的回复。是的,这是我从服务器得到的流。我也试过你的,但问题是一样的。如果我只是在浏览器中显示,它就会出现。我可以看到pdf或图片,但当我想下载。我什么都没有。嘿,谢谢你的回复。我找到了答案,我没有回答:“arraybuffer”。这就解决了问题。