首页 > 解决方案 > 使用html上传要下载的批处理文件

问题描述

我创建了一个名为“example.bat”的简单批处理文件,我想通过 HTML<a href="" download>属性下载它。这实际上适用于下载任何其他文件,但是当我为批处理文件设置 url 时,它没有下载,而是打开了一个新选项卡,其中包含跨页面编写的代码。

<a href="www.example.com/example.bat" target="_blank" download> DOWNLOAD A VIRUS </a>

我希望我的批处理文件能够下载到我的计算机上,但它却在新选项卡中打开了文件的代码。

标签: javascripthtmlbatch-filedownloadhref

解决方案


您的 HTML 实际上缺少一个href属性,并且您的文件 URI is missing file:。我很惊讶这对你有用。尝试这个:

<a href="file:///C:/user/admin/desktop/virus.bat" download>
  DOWNLOAD A VIRUS
</a>

现在,在您的实际问题上......对于 Chrome,该download属性被忽略跨域,并且似乎也在file://起源上。如果您要在实际的 Web 服务器上托管它,那就没问题了。如果没有 Web 服务器,您能做的最好的事情就是使用数据 URI

<a href="data:application/bat;base64,QGVjaG8gb2ZmCkVDSE8gVGhpcyBpcyBhIHRlc3QgYmF0Y2ggZmlsZS4K" download="virus.bat">
  DOWNLOAD A VIRUS
</a>

推荐阅读