javascript - 使用html上传要下载的批处理文件
问题描述
我创建了一个名为“example.bat”的简单批处理文件,我想通过 HTML<a href="" download>
属性下载它。这实际上适用于下载任何其他文件,但是当我为批处理文件设置 url 时,它没有下载,而是打开了一个新选项卡,其中包含跨页面编写的代码。
<a href="www.example.com/example.bat" target="_blank" download>
DOWNLOAD A VIRUS
</a>
我希望我的批处理文件能够下载到我的计算机上,但它却在新选项卡中打开了文件的代码。
解决方案
您的 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>
推荐阅读
- typescript - typescript unhandledRejection Promise
- azure - 动态创建事件网格主题和订阅而无需通过编码访问 azure 门户?
- tensorflow - 许多 if/else 条件的最佳神经网络模型
- java - RxJava2 lift vs compose(ObservableOperator vs ObservableTransformer)
- python - Python - Django 2.2 中的多用户类型实现
- php - PHP 日期 4 周前
- javascript - 如何删除 ag 网格中的重复项(角度)
- python - 将 CSV 转换为嵌套 JSON,同时将特定键的值格式化为 numeric/int/float
- ios - iPhone 可以充当 NFC 标签吗?
- azure - 在一个 Azure Front Door 后面设置多个 Web 应用