js——下载文件

本文介绍了JavaScript中触发浏览器自动下载文件的五种方法,包括iframe、a标签、form提交、window.location.href及window.open,并详细解析了Content-Disposition和Content-Type响应头的作用。重点探讨了如何避免新标签页打开并实现多个文件同时下载。
摘要由CSDN通过智能技术生成

OSS阿里云上传文件 前端js下载url跨域问题

能触发浏览器下载的url有两类:

  • response header——指定了Content-Disposition为attachment,它表示让浏览器把响应体作为附件下载到本地 (一般Content-Disposition还会指定filename, 下载的文件默认就是filename指定的名字)

  • response header——指定了Content-Type 为 application/octet-stream(无类型) 或者 application/zip(下载zip包时)以及其它几个不常见类型 (其中还有浏览器差异),其中 application/octet-stream表示http response为二进制流(没指定明确的type), 需要下载到本地, 由系统决定或者用户手动指定打开方式。

在这种前提下,只需要浏览器请求了这个地址,都会自动下载,具体的方式如下:

1. iframe——加载请求此地址时会自动下载 ,使用的时候把iframe设置为display;none即可(而对 pdf/mp3 之类文件是直接打开)
<iframe name="hehe" src='下载url'></iframe>
2. a——点击请求此地址时会自动下载
<a href
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值