Javascript Blob函数没有下载二进制内容



此javascript代码不下载实际文件,而是将URL的路径+文件名放入名为requestRouter_amd64.msi:的文件的内容中

<p>
<script type = "text/javascript">
async function downloadFile(filePathAndName, fileDataContentType, fileName) {
try {
fileDataContentType = "octet/stream"
const blob = new Blob([filePathAndName], {
type: fileDataContentType
});
const link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = fileName;
link.click();
} catch (error) {}
}

downloadFile("https://download.microsoft.com/download/E/9/8/E9849D6A-020E-47E4-9FD0-A023E99B54EB/requestRouter_amd64.msi", "application/zip", "requestRouter_amd64.msi");

</script>
</p>

我也尝试过";application/zip";对于fileDataContentType,但结果相同。

据我所见,blob会消耗客户端内存。因此,我在这个解决方案中遵循最后输入的解决方案,通过流下载文件。虽然我没有使用CSS来移动链接,但它的工作原理就像一种享受。

相关内容

  • 没有找到相关文章