一般在一些运营后台都会需要下载功能,那么前端怎么实现下载功能呢?
下载链接
要下载,首先一个前提条件是需要让浏览器知道从哪下载,简单来说就是给浏览器一个下载地址。
这个地址可以是文件的路径,直接下载;也可以是接口,由后端返回文件流给前端。
下载方式
抛开一些框架和工具不提,比较常见的下载方式有两种:<a>
、window.open
。
a标签
可以给a标签的href
属性赋值上述的下载链接。
<a href="https://a.com/test.pdf" download="机密文件.pdf">点我下载</a>
window.open
也可以通过JS的方式进行下载:
function download(url) {
// 新打开页面进行下载
window.open(url);
// 在当前页面下载
window.open(url, '_self');
}
总结
下载链接:
- 文件路径;
- 返回文件流的接口。
下载方式:
- a标签;
- window.open。