我创建了一个名为"example.bat"的简单批处理文件,我想通过HTML <a href="" download>
属性下载该文件。这几乎适用于下载任何其他文件,但是当我为批处理文件设置 url 时,它没有下载,而是打开了一个新选项卡,其中包含跨页面编写的代码。
<a href="www.example.com/example.bat" target="_blank" download>
DOWNLOAD A VIRUS
</a>
我希望我的批处理文件下载到我的计算机上,但它反而在新选项卡中打开了文件的代码。
您的 HTML 实际上缺少 href
属性,并且您的文件 URI 缺少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>
将以下行添加到.htaccess
文件中:
<Files "virus.bat">
ForceType application/octet-stream
Header set Content-Disposition attachment
</Files>
这会将您的文件视为附件。
您可以在 https://help.dreamhost.com/hc/en-us/articles/216363147-How-can-I-force-a-file-to-be-downloaded-