前端实现批量打包下载文件

  后端接口返回附件列表(含URL),这些附件存在阿里云OSS上。一期需求是实现对列出的附件进行点击下载,也就是每次只下载点击的附件(PDF | 图片),使用一段时间后制定二期需求时,增加批量下载功能,需要打包在一起。附言:本文所写都是纯前端实现,后端接口只需要返回路径即可。

单独下载图片:

  直接使用<a>标签,会存在这样的问题:同源链接点击后直接在浏览器打开,通过在<a>标签内指定download属性可以避免,但是非同源链接却不行。所以通过Canvas + JS方式实现点击图片直接下载,这里要解决这么几个问题:1、非同源及跨域问题;2、Canvas图片下载限制问题。同源问题很好解决,只需要一行代码:

image.setAttribute(\'crossOrigin\', \'anonymous\')

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzppfj.html